Skip to content

Commit 6479e39

Browse files
committed
🔨 push terminal images when running GitHub action
1 parent 4cedbfe commit 6479e39

2 files changed

Lines changed: 112 additions & 2 deletions

File tree

‎.github/workflows/docker-build-push-mainland.yml‎

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,46 @@ jobs:
147147
- name: Push web image (arm64) to Tencent Cloud
148148
run: docker push ccr.ccs.tencentyun.com/nexent-hub/nexent-web:arm64
149149

150+
build-and-push-terminal-amd64:
151+
runs-on: ${{ fromJson(inputs.runner_label_json) }}
152+
steps:
153+
- name: Set up Docker Buildx
154+
run: |
155+
if ! docker buildx inspect nexent_builder > /dev/null 2>&1; then
156+
docker buildx create --name nexent_builder --use
157+
else
158+
docker buildx use nexent_builder
159+
fi
160+
- name: Checkout code
161+
uses: actions/checkout@v4
162+
- name: Build terminal image (amd64) and load locally
163+
run: |
164+
docker buildx build --platform linux/amd64 --load -t ccr.ccs.tencentyun.com/nexent-hub/nexent-terminal:amd64 -f make/terminal/Dockerfile --build-arg MIRROR=https://pypi.tuna.tsinghua.edu.cn/simple --build-arg APT_MIRROR=tsinghua .
165+
- name: Login to Tencent Cloud
166+
run: echo ${{ secrets.TCR_PASSWORD }} | docker login ccr.ccs.tencentyun.com --username=${{ secrets.TCR_USERNAME }} --password-stdin
167+
- name: Push terminal image (amd64) to Tencent Cloud
168+
run: docker push ccr.ccs.tencentyun.com/nexent-hub/nexent-terminal:amd64
169+
170+
build-and-push-terminal-arm64:
171+
runs-on: ${{ fromJson(inputs.runner_label_json) }}
172+
steps:
173+
- name: Set up Docker Buildx
174+
run: |
175+
if ! docker buildx inspect nexent_builder > /dev/null 2>&1; then
176+
docker buildx create --name nexent_builder --use
177+
else
178+
docker buildx use nexent_builder
179+
fi
180+
- name: Checkout code
181+
uses: actions/checkout@v4
182+
- name: Build terminal image (arm64) and load locally
183+
run: |
184+
docker buildx build --platform linux/arm64 --load -t ccr.ccs.tencentyun.com/nexent-hub/nexent-terminal:arm64 -f make/terminal/Dockerfile --build-arg MIRROR=https://pypi.tuna.tsinghua.edu.cn/simple --build-arg APT_MIRROR=tsinghua .
185+
- name: Login to Tencent Cloud
186+
run: echo ${{ secrets.TCR_PASSWORD }} | docker login ccr.ccs.tencentyun.com --username=${{ secrets.TCR_USERNAME }} --password-stdin
187+
- name: Push terminal image (arm64) to Tencent Cloud
188+
run: docker push ccr.ccs.tencentyun.com/nexent-hub/nexent-terminal:arm64
189+
150190
manifest-push-main:
151191
runs-on: ubuntu-latest
152192
needs:
@@ -190,4 +230,19 @@ jobs:
190230
docker manifest create ccr.ccs.tencentyun.com/nexent-hub/nexent-web:latest \
191231
ccr.ccs.tencentyun.com/nexent-hub/nexent-web:amd64 \
192232
ccr.ccs.tencentyun.com/nexent-hub/nexent-web:arm64
193-
docker manifest push ccr.ccs.tencentyun.com/nexent-hub/nexent-web:latest
233+
docker manifest push ccr.ccs.tencentyun.com/nexent-hub/nexent-web:latest
234+
235+
manifest-push-terminal:
236+
runs-on: ubuntu-latest
237+
needs:
238+
- build-and-push-terminal-amd64
239+
- build-and-push-terminal-arm64
240+
steps:
241+
- name: Login to Tencent Cloud
242+
run: echo ${{ secrets.TCR_PASSWORD }} | docker login ccr.ccs.tencentyun.com --username=${{ secrets.TCR_USERNAME }} --password-stdin
243+
- name: Create and push manifest for terminal (Tencent Cloud)
244+
run: |
245+
docker manifest create ccr.ccs.tencentyun.com/nexent-hub/nexent-terminal:latest \
246+
ccr.ccs.tencentyun.com/nexent-hub/nexent-terminal:amd64 \
247+
ccr.ccs.tencentyun.com/nexent-hub/nexent-terminal:arm64
248+
docker manifest push ccr.ccs.tencentyun.com/nexent-hub/nexent-terminal:latest

‎.github/workflows/docker-build-push-overseas.yml‎

Lines changed: 56 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -147,6 +147,46 @@ jobs:
147147
- name: Push web image (arm64) to DockerHub
148148
run: docker push nexent/nexent-web:arm64
149149

150+
build-and-push-terminal-amd64:
151+
runs-on: ${{ fromJson(inputs.runner_label_json) }}
152+
steps:
153+
- name: Set up Docker Buildx
154+
run: |
155+
if ! docker buildx inspect nexent_builder > /dev/null 2>&1; then
156+
docker buildx create --name nexent_builder --use
157+
else
158+
docker buildx use nexent_builder
159+
fi
160+
- name: Checkout code
161+
uses: actions/checkout@v4
162+
- name: Build terminal image (amd64) and load locally
163+
run: |
164+
docker buildx build --platform linux/amd64 -t nexent/nexent-terminal:amd64 --load -f make/terminal/Dockerfile .
165+
- name: Login to DockerHub
166+
run: echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u nexent --password-stdin
167+
- name: Push terminal image (amd64) to DockerHub
168+
run: docker push nexent/nexent-terminal:amd64
169+
170+
build-and-push-terminal-arm64:
171+
runs-on: ${{ fromJson(inputs.runner_label_json) }}
172+
steps:
173+
- name: Set up Docker Buildx
174+
run: |
175+
if ! docker buildx inspect nexent_builder > /dev/null 2>&1; then
176+
docker buildx create --name nexent_builder --use
177+
else
178+
docker buildx use nexent_builder
179+
fi
180+
- name: Checkout code
181+
uses: actions/checkout@v4
182+
- name: Build terminal image (arm64) and load locally
183+
run: |
184+
docker buildx build --platform linux/arm64 -t nexent/nexent-terminal:arm64 --load -f make/terminal/Dockerfile .
185+
- name: Login to DockerHub
186+
run: echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u nexent --password-stdin
187+
- name: Push terminal image (arm64) to DockerHub
188+
run: docker push nexent/nexent-terminal:arm64
189+
150190
manifest-push-main:
151191
runs-on: ubuntu-latest
152192
needs:
@@ -190,4 +230,19 @@ jobs:
190230
docker manifest create nexent/nexent-web:latest \
191231
nexent/nexent-web:amd64 \
192232
nexent/nexent-web:arm64
193-
docker manifest push nexent/nexent-web:latest
233+
docker manifest push nexent/nexent-web:latest
234+
235+
manifest-push-terminal:
236+
runs-on: ubuntu-latest
237+
needs:
238+
- build-and-push-terminal-amd64
239+
- build-and-push-terminal-arm64
240+
steps:
241+
- name: Login to DockerHub
242+
run: echo ${{ secrets.DOCKERHUB_TOKEN }} | docker login -u nexent --password-stdin
243+
- name: Create and push manifest for terminal (DockerHub)
244+
run: |
245+
docker manifest create nexent/nexent-terminal:latest \
246+
nexent/nexent-terminal:amd64 \
247+
nexent/nexent-terminal:arm64
248+
docker manifest push nexent/nexent-terminal:latest

0 commit comments

Comments
 (0)