Skip to content

Commit a7b5e58

Browse files
committed
perf(ci): use custom images
1 parent 226ef07 commit a7b5e58

File tree

4 files changed

+43
-51
lines changed

4 files changed

+43
-51
lines changed

.dockerignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,3 +7,5 @@ docker
77
docker-compose.yml
88
lighttpd.conf
99
fadroma/packages/namada/target
10+
fadroma/examples
11+
fadroma/fixtures

.drone.yml

Lines changed: 21 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -3,35 +3,30 @@ kind: pipeline
33
type: docker
44
name: build
55
trigger: { event: [ push ] }
6-
volumes: [ { name: cache, host: { path: /data/ci-cache-docker } } ]
6+
volumes: [ { name: docker, host: { path: "/data/ci-cache-docker" } } ]
7+
image_pull_secrets: [ oci_hack_bg ] # https://docs.drone.io/pipeline/docker/syntax/images/#pulling-private-images
78
steps:
8-
- name: git
9-
image: alpine/git:latest
9+
10+
- name: prepare
11+
image: oci.hack.bg/platform-alpine:latest
12+
pull: always
1013
commands:
1114
- echo $HOME
1215
- ls -al $HOME
13-
- printf $(git rev-parse --abbrev-ref HEAD) > BRANCH
14-
- cat BRANCH
16+
- git config --global --add safe.directory /drone/src
17+
- printf $(git rev-parse --abbrev-ref HEAD) > "$HOME/BRANCH"
18+
- cat "$HOME/BRANCH"
1519
- git submodule update --init --recursive --depth 1
16-
- name: build
17-
image: docker:24.0.7-alpine3.18
18-
volumes: [ { name: cache, path: /cache/docker } ]
20+
21+
- name: docker
22+
image: oci.hack.bg/drone-docker:master
23+
pull: always
24+
volumes: [ { name: docker, path: "/var/lib/docker" } ]
1925
privileged: true
20-
environment:
21-
NAME: "oci.hack.bg/undexer"
22-
USER: { from_secret: "oci-user" }
23-
PASS: { from_secret: "oci-pass" }
24-
MIRROR: "http://127.0.0.1:5000"
25-
DOCKER_DATA: "/cache/docker"
26-
DOCKER_HOST: "tcp://127.0.0.1:2375"
27-
commands:
28-
- nohup dockerd --tls=false --dns 1.1.1.1 --rootless=true --bridge=none --iptables=false --data-root "$DOCKER_DATA" --host="$DOCKER_HOST" --registry-mirror "$MIRROR" &
29-
- sleep 10
30-
- docker version; docker info
31-
- echo "\nLooking around...\n"; whoami; pwd; ls -al
32-
- echo "$PASS" | docker login -u "$USER" --password-stdin https://oci.hack.bg
33-
- export IMAGE="$NAME:$(cat BRANCH | tr '/' '_' | tr '\n' ' ')"
34-
- 'printf "Name: $NAME\nImage: $IMAGE\n"'
35-
- docker pull "$IMAGE" || true
36-
- docker build --network=host --cache-to=type=inline --cache-from="$IMAGE" -t "$IMAGE" .
37-
- docker push "$IMAGE"
26+
settings:
27+
#debug: true
28+
username: { from_secret: oci-user }
29+
password: { from_secret: oci-pass }
30+
registry: oci.hack.bg
31+
repo: oci.hack.bg/undexer
32+
tags: v4

Dockerfile

Lines changed: 19 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,20 @@
1-
FROM rust:1.79-alpine3.20@sha256:cc9b42c44d37caccb8f7c366f19f5a41ca0f20f826fb043be073167308b6073d as wasm
1+
# Build the WASM blob
2+
from oci.hack.bg/platform-alpine:latest as wasm
3+
run apk add musl-dev protoc protobuf-dev openssl-dev cmake
4+
workdir /build/fadroma-namada
5+
copy ./fadroma/packages/namada/Cargo.toml ./fadroma/packages/namada/Cargo.lock .
6+
run cat Cargo.toml && mkdir -p src && touch src/lib.rs && PATH=$PATH:~/.cargo/bin cargo fetch
7+
copy ./fadroma/packages/namada/src ./src
8+
run PATH=$PATH:~/.cargo/bin wasm-pack build --release --target web \
9+
&& rm -rf target
210

3-
RUN apk add musl-dev protoc protobuf-dev openssl-dev cmake build-base binaryen
4-
RUN rustup target add wasm32-unknown-unknown
5-
RUN cargo install [email protected]
6-
7-
WORKDIR /build/fadroma-namada
8-
COPY ./fadroma/packages/namada/Cargo.toml ./fadroma/packages/namada/Cargo.lock .
9-
RUN cat Cargo.toml && mkdir -p src && touch src/lib.rs && cargo fetch
10-
COPY ./fadroma/packages/namada/src ./src
11-
RUN PATH=$PATH:~/.cargo/bin wasm-pack build --release --target web \
12-
&& rm -rf target
13-
14-
FROM node:22.4-alpine3.20
15-
16-
RUN apk add git
17-
WORKDIR /app
18-
ADD . ./
19-
RUN pwd && ls -al
20-
RUN npm i -g pnpm
21-
RUN pnpm i --frozen-lockfile
22-
23-
COPY --from=wasm /build/fadroma-namada/pkg/fadroma_namada_bg.wasm ./fadroma/packages/namada/pkg/fadroma_namada_bg.wasm
24-
25-
RUN pwd && ls -al
11+
# Build the app container
12+
from oci.hack.bg/runtime-alpine:latest
13+
workdir /app
14+
add . ./
15+
run pwd && ls -al
16+
user 0
17+
run corepack install && pnpm --version && pnpm i --frozen-lockfile
18+
copy --from=wasm /build/fadroma-namada/pkg/fadroma_namada_bg.wasm ./fadroma/packages/namada/pkg/fadroma_namada_bg.wasm
19+
user 1000
20+
run pwd && ls -al

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
"main": "main.ts",
55
"version": "4.0.0",
66
"description": "Namada indexer to file.",
7-
"packageManager": "pnpm@8.15.6+sha256.01c01eeb990e379b31ef19c03e9d06a14afa5250b82e81303f88721c99ff2e6f",
7+
"packageManager": "pnpm@9.15.0+sha512.76e2379760a4328ec4415815bcd6628dee727af3779aaa4c914e3944156c4299921a89f976381ee107d41f12cfa4b66681ca9c718f0668fa0831ed4c6d8ba56c",
88
"bin": {
99
"undexer": "./undexer"
1010
},

0 commit comments

Comments
 (0)