-
Notifications
You must be signed in to change notification settings - Fork 14.2k
61 lines (55 loc) · 2.51 KB
/
amd64-release.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
name: Get-AMD64-Docker-Images-Release
on:
workflow_dispatch:
inputs:
docker_images:
description: '请填写docker镜像名称,多个用英文逗号分开'
required: true
default: 'alpine:latest,alpine/curl,busybox:stable-glibc'
jobs:
pull_and_package:
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Pull Docker Images and Package
run: |
images="${{ github.event.inputs.docker_images }}"
IFS=',' read -r -a image_array <<< "$images"
for image in "${image_array[@]}"; do
docker pull "${image}" --platform "linux/amd64"
image_name="${image//\//_}"
image_name="${image_name//:/_}"
docker save "${image}" -o "${image_name}-amd64.tar"
gzip -c "${image_name}-amd64.tar" > "${image_name}-amd64.tar.gz"
rm "${image_name}-amd64.tar"
done
- name: List generated files (debug step)
run: |
echo "Preparing docker images list (.tar.gz) files:"
find $GITHUB_WORKSPACE -name "*.tar.gz"
release_name=$(TZ="Asia/Shanghai" date +'%Y-%m-%d %H:%M Build')
echo "RELEASE_NAME=$release_name" >> $GITHUB_ENV
- name: Create GitHub Release
uses: softprops/action-gh-release@master
with:
tag_name: DockerTarBuilder-AMD64
name: ${{ env.RELEASE_NAME }} for x86-64
body: |
[](https://www.bilibili.com/video/BV1EZ421M7mL) [](https://wkdaily.cpolar.top/archives/1)
### How to use? For example
`docker load -i alpine_latest.tar.gz `
### Video teaching
[](https://www.bilibili.com/video/BV1EZ421M7mL)
draft: false
prerelease: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Upload Docker images as release assets
uses: softprops/action-gh-release@master
with:
tag_name: DockerTarBuilder-AMD64
files: ${{ github.workspace }}/*.tar.gz
token: ${{ secrets.GITHUB_TOKEN }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}