Skip to content

Commit 7da9f21

Browse files
committed
feat(sdk): new runtime and database releases
1 parent c772e6a commit 7da9f21

File tree

5 files changed

+209
-3
lines changed

5 files changed

+209
-3
lines changed

.github/workflows/database.yaml

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
name: database
2+
on:
3+
workflow_call:
4+
secrets:
5+
DOCKERHUB_USERNAME:
6+
required: true
7+
DOCKERHUB_TOKEN:
8+
required: true
9+
pull_request:
10+
paths:
11+
- .github/workflows/database.yaml
12+
- packages/sdk/**
13+
concurrency:
14+
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
15+
cancel-in-progress: true
16+
permissions:
17+
contents: read
18+
packages: write
19+
id-token: write
20+
actions: write
21+
jobs:
22+
build:
23+
runs-on: ubuntu-latest
24+
steps:
25+
- name: Checkout
26+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
27+
28+
- name: Get package tag/version
29+
id: package-version
30+
if: ${{ github.event_name == 'push' }}
31+
run: |
32+
jq -r '"PACKAGE_VERSION=\(.version)"' packages/sdk/package.json >> "$GITHUB_OUTPUT"
33+
34+
- name: Docker meta
35+
id: meta
36+
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
37+
with:
38+
images: |
39+
docker.io/cartesi/rollups-database,enable=${{ github.event_name != 'pull_request' }}
40+
ghcr.io/cartesi/rollups-database
41+
tags: |
42+
type=raw,value=${{ steps.package-version.outputs.PACKAGE_VERSION }},enable=${{ github.event_name == 'push' }}
43+
type=ref,event=pr
44+
labels: |
45+
org.opencontainers.image.title=Cartesi Rollups Database
46+
org.opencontainers.image.description=Cartesi Rollups SDK Database with pre-initialized PostgreSQL Database
47+
48+
- name: Set up Docker Buildx
49+
uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
50+
51+
- name: Login to GitHub Container Registry
52+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
53+
with:
54+
registry: ghcr.io
55+
username: ${{ github.actor }}
56+
password: ${{ secrets.GITHUB_TOKEN }}
57+
58+
- name: Login to DockerHub
59+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
60+
with:
61+
username: ${{ secrets.DOCKERHUB_USERNAME }}
62+
password: ${{ secrets.DOCKERHUB_TOKEN }}
63+
64+
- name: Build and push
65+
uses: docker/bake-action@4a9a8d494466d37134e2bfca2d3a8de8fb2681ad # v5.13.0
66+
if: ${{ !startsWith(github.ref, 'refs/tags/sdk@') }}
67+
with:
68+
workdir: packages/sdk
69+
targets: database
70+
files: |
71+
./docker-bake.hcl
72+
./docker-bake.platforms.hcl
73+
${{ steps.meta.outputs.bake-file }}
74+
set: |
75+
*.cache-from=type=registry,ref=ghcr.io/cartesi/sdk-cache:shared
76+
*.cache-to=type=registry,ref=ghcr.io/cartesi/sdk-cache:shared,mode=max
77+
push: true
78+
79+
- uses: depot/setup-action@b0b1ea4f69e92ebf5dea3f8713a1b0c37b2126a5 # v1.6.0
80+
- name: Build and push (depot)
81+
uses: depot/bake-action@58d7160c6bfa64eb85e384209e6f2f5ad17948bb # v1.11.0
82+
if: ${{ startsWith(github.ref, 'refs/tags/sdk@') }}
83+
with:
84+
project: ${{ vars.DEPOT_PROJECT }}
85+
workdir: packages/sdk
86+
targets: database
87+
files: |
88+
./docker-bake.hcl
89+
./docker-bake.platforms.hcl
90+
${{ steps.meta.outputs.bake-file }}
91+
push: true

.github/workflows/runtime.yaml

Lines changed: 91 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
name: runtime
2+
on:
3+
workflow_call:
4+
secrets:
5+
DOCKERHUB_USERNAME:
6+
required: true
7+
DOCKERHUB_TOKEN:
8+
required: true
9+
pull_request:
10+
paths:
11+
- .github/workflows/runtime.yaml
12+
- packages/sdk/**
13+
concurrency:
14+
group: ${{ github.workflow }}-${{ github.ref }}-${{ github.event_name }}
15+
cancel-in-progress: true
16+
permissions:
17+
contents: read
18+
packages: write
19+
id-token: write
20+
actions: write
21+
jobs:
22+
build:
23+
runs-on: ubuntu-latest
24+
steps:
25+
- name: Checkout
26+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
27+
28+
- name: Get package tag/version
29+
id: package-version
30+
if: ${{ github.event_name == 'push' }}
31+
run: |
32+
jq -r '"PACKAGE_VERSION=\(.version)"' packages/sdk/package.json >> "$GITHUB_OUTPUT"
33+
34+
- name: Docker meta
35+
id: meta
36+
uses: docker/metadata-action@902fa8ec7d6ecbf8d84d538b9b233a880e428804 # v5.7.0
37+
with:
38+
images: |
39+
docker.io/cartesi/sdk-node,enable=${{ github.event_name != 'pull_request' }}
40+
ghcr.io/cartesi/sdk-node
41+
tags: |
42+
type=raw,value=${{ steps.package-version.outputs.PACKAGE_VERSION }},enable=${{ github.event_name == 'push' }}
43+
type=ref,event=pr
44+
labels: |
45+
org.opencontainers.image.title=Cartesi Rollups SDK Node
46+
org.opencontainers.image.description=Cartesi Rollups SDK Node with optional services
47+
48+
- name: Set up Docker Buildx
49+
uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
50+
51+
- name: Login to GitHub Container Registry
52+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
53+
with:
54+
registry: ghcr.io
55+
username: ${{ github.actor }}
56+
password: ${{ secrets.GITHUB_TOKEN }}
57+
58+
- name: Login to DockerHub
59+
uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
60+
with:
61+
username: ${{ secrets.DOCKERHUB_USERNAME }}
62+
password: ${{ secrets.DOCKERHUB_TOKEN }}
63+
64+
- name: Build and push
65+
uses: docker/bake-action@4a9a8d494466d37134e2bfca2d3a8de8fb2681ad # v5.13.0
66+
if: ${{ !startsWith(github.ref, 'refs/tags/sdk@') }}
67+
with:
68+
workdir: packages/sdk
69+
targets: runtime
70+
files: |
71+
./docker-bake.hcl
72+
./docker-bake.platforms.hcl
73+
${{ steps.meta.outputs.bake-file }}
74+
set: |
75+
*.cache-from=type=registry,ref=ghcr.io/cartesi/sdk-cache:shared
76+
*.cache-to=type=registry,ref=ghcr.io/cartesi/sdk-cache:shared,mode=max
77+
push: true
78+
79+
- uses: depot/setup-action@b0b1ea4f69e92ebf5dea3f8713a1b0c37b2126a5 # v1.6.0
80+
- name: Build and push (depot)
81+
uses: depot/bake-action@58d7160c6bfa64eb85e384209e6f2f5ad17948bb # v1.11.0
82+
if: ${{ startsWith(github.ref, 'refs/tags/sdk@') }}
83+
with:
84+
project: ${{ vars.DEPOT_PROJECT }}
85+
workdir: packages/sdk
86+
targets: runtime
87+
files: |
88+
./docker-bake.hcl
89+
./docker-bake.platforms.hcl
90+
${{ steps.meta.outputs.bake-file }}
91+
push: true

.github/workflows/sdk.yaml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,13 +66,14 @@ jobs:
6666
if: ${{ !startsWith(github.ref, 'refs/tags/sdk@') }}
6767
with:
6868
workdir: packages/sdk
69+
targets: sdk
6970
files: |
7071
./docker-bake.hcl
7172
./docker-bake.platforms.hcl
7273
${{ steps.meta.outputs.bake-file }}
7374
set: |
74-
*.cache-from=type=gha
75-
*.cache-to=type=gha,mode=max
75+
*.cache-from=type=registry,ref=ghcr.io/cartesi/sdk-cache:shared
76+
*.cache-to=type=registry,ref=ghcr.io/cartesi/sdk-cache:shared,mode=max
7677
push: true
7778

7879
- uses: depot/setup-action@b0b1ea4f69e92ebf5dea3f8713a1b0c37b2126a5 # v1.6.0
@@ -81,6 +82,7 @@ jobs:
8182
if: ${{ startsWith(github.ref, 'refs/tags/sdk@') }}
8283
with:
8384
project: ${{ vars.DEPOT_PROJECT }}
85+
targets: sdk
8486
workdir: packages/sdk
8587
files: |
8688
./docker-bake.hcl

packages/sdk/docker-bake.hcl

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,3 +23,17 @@ target "default" {
2323
XGENEXT2_VERSION = "1.5.6"
2424
}
2525
}
26+
27+
target "sdk" {
28+
inherits = ["default", "docker-metadata-action", "docker-platforms"]
29+
}
30+
31+
target "runtime" {
32+
inherits = ["default", "docker-metadata-action", "docker-platforms"]
33+
target = "runtime"
34+
}
35+
36+
target "database" {
37+
inherits = ["default", "docker-metadata-action", "docker-platforms"]
38+
target = "database"
39+
}
Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1-
target "default" {
1+
target "sdk" {
22
tags = ["cartesi/sdk:devel"]
33
}
4+
5+
target "rollups-node" {
6+
tags = ["cartesi/rollups-runtime:devel"]
7+
}
8+
9+
target "database" {
10+
tags = ["cartesi/rollups-database:devel"]
11+
}

0 commit comments

Comments
 (0)