Add target platform to artifact names.
Use better gzip input name which is preserved by metadata. Add chmod for input file and use for executables. Signed-off-by: Jason Volk <jason@zemos.net>
This commit is contained in:
14
.github/workflows/bake.yml
vendored
14
.github/workflows/bake.yml
vendored
@@ -141,12 +141,14 @@ jobs:
|
|||||||
iid: ${{matrix.bake_target}}--${{matrix.cargo_profile}}--${{matrix.rust_toolchain}}--${{matrix.rust_target}}--${{matrix.feat_set}}--${{matrix.sys_name}}--${{matrix.sys_version}}--${{matrix.sys_target}}
|
iid: ${{matrix.bake_target}}--${{matrix.cargo_profile}}--${{matrix.rust_toolchain}}--${{matrix.rust_target}}--${{matrix.feat_set}}--${{matrix.sys_name}}--${{matrix.sys_version}}--${{matrix.sys_target}}
|
||||||
dst: ${{ fromJSON(inputs.artifact)[matrix.bake_target].dst }}
|
dst: ${{ fromJSON(inputs.artifact)[matrix.bake_target].dst }}
|
||||||
src: ${{ fromJSON(inputs.artifact)[matrix.bake_target].src || fromJSON(inputs.artifact)[matrix.bake_target].dst }}
|
src: ${{ fromJSON(inputs.artifact)[matrix.bake_target].src || fromJSON(inputs.artifact)[matrix.bake_target].dst }}
|
||||||
|
mod: ${{ fromJSON(inputs.artifact)[matrix.bake_target].chmod || 'u+r' }}
|
||||||
|
|
||||||
run: |
|
run: |
|
||||||
cid=$(docker create "$iid" /)
|
cid=$(docker create "$iid" /)
|
||||||
rm -rf _artifact
|
rm -rf _artifact
|
||||||
mkdir -p "_artifact"
|
mkdir -p "_artifact"
|
||||||
docker cp "$cid:$src" "_artifact/$dst"
|
docker cp "$cid:$src" "_artifact/$dst"
|
||||||
|
chmod "$mod" "_artifact/$dst"
|
||||||
|
|
||||||
# Optionally extract the image itself as an artifact.
|
# Optionally extract the image itself as an artifact.
|
||||||
- name: Extract Image Artifact
|
- name: Extract Image Artifact
|
||||||
@@ -174,11 +176,13 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
dst: ${{ fromJSON(inputs.artifact)[matrix.bake_target].dst }}
|
dst: ${{ fromJSON(inputs.artifact)[matrix.bake_target].dst }}
|
||||||
src: ${{ fromJSON(inputs.artifact)[matrix.bake_target].src || fromJSON(inputs.artifact)[matrix.bake_target].dst }}
|
src: ${{ fromJSON(inputs.artifact)[matrix.bake_target].src || fromJSON(inputs.artifact)[matrix.bake_target].dst }}
|
||||||
|
mod: ${{ fromJSON(inputs.artifact)[matrix.bake_target].chmod || 'u+r' }}
|
||||||
|
|
||||||
run: |
|
run: |
|
||||||
rm -rf _artifact
|
rm -rf _artifact
|
||||||
mkdir -p "_artifact"
|
mkdir -p "_artifact"
|
||||||
mv "$src" "_artifact/$dst"
|
mv "$src" "_artifact/$dst"
|
||||||
|
chmod "$mod" "_artifact/$dst"
|
||||||
|
|
||||||
# Optionally compress extracted artifact
|
# Optionally compress extracted artifact
|
||||||
- name: Compress Artifact
|
- name: Compress Artifact
|
||||||
@@ -194,9 +198,9 @@ jobs:
|
|||||||
|
|
||||||
run: |
|
run: |
|
||||||
if test -n "$gzlev"; then
|
if test -n "$gzlev"; then
|
||||||
mv "_artifact/$dst" "_artifact/foo"
|
mv "_artifact/$dst" "_artifact/$dst.artifact"
|
||||||
gzip "-$gzlev" "_artifact/foo"
|
gzip "-$gzlev" "_artifact/$dst.artifact"
|
||||||
mv "_artifact/foo.gz" "_artifact/$dst"
|
mv "_artifact/$dst.artifact.gz" "_artifact/$dst"
|
||||||
elif test -n "$zstlev"; then
|
elif test -n "$zstlev"; then
|
||||||
zstd "-$zstlev" "_artifact/$dst"
|
zstd "-$zstlev" "_artifact/$dst"
|
||||||
mv "_artifact/$dst.zst" "_artifact/$dst"
|
mv "_artifact/$dst.zst" "_artifact/$dst"
|
||||||
@@ -211,7 +215,7 @@ jobs:
|
|||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
path: _artifact/*
|
path: _artifact/*
|
||||||
name: ${{matrix.cargo_profile}}-${{matrix.feat_set}}-${{fromJSON(inputs.artifact)[matrix.bake_target].dst}}
|
name: ${{matrix.cargo_profile}}-${{matrix.feat_set}}-${{matrix.sys_target}}-${{fromJSON(inputs.artifact)[matrix.bake_target].dst}}
|
||||||
|
|
||||||
# Optionally upload artifact as pages-artifact
|
# Optionally upload artifact as pages-artifact
|
||||||
- name: Upload Pages Artifact
|
- name: Upload Pages Artifact
|
||||||
@@ -240,5 +244,5 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
upload_url: ${{inputs.release_url}}
|
upload_url: ${{inputs.release_url}}
|
||||||
asset_path: _artifact/${{fromJSON(inputs.artifact)[matrix.bake_target].dst}}
|
asset_path: _artifact/${{fromJSON(inputs.artifact)[matrix.bake_target].dst}}
|
||||||
asset_name: ${{github.ref_name}}-${{matrix.cargo_profile}}-${{matrix.feat_set}}-${{fromJSON(inputs.artifact)[matrix.bake_target].dst}}
|
asset_name: ${{github.ref_name}}-${{matrix.cargo_profile}}-${{matrix.feat_set}}-${{matrix.sys_target}}-${{fromJSON(inputs.artifact)[matrix.bake_target].dst}}
|
||||||
asset_content_type: ${{fromJSON(inputs.artifact)[matrix.bake_target].mime || 'application/octet-stream'}}
|
asset_content_type: ${{fromJSON(inputs.artifact)[matrix.bake_target].mime || 'application/octet-stream'}}
|
||||||
|
|||||||
3
.github/workflows/package.yml
vendored
3
.github/workflows/package.yml
vendored
@@ -96,7 +96,8 @@ jobs:
|
|||||||
"dst": "tuwunel.zst",
|
"dst": "tuwunel.zst",
|
||||||
"src": "/usr/bin/tuwunel",
|
"src": "/usr/bin/tuwunel",
|
||||||
"mime": "application/zstd",
|
"mime": "application/zstd",
|
||||||
"zstd": 11
|
"zstd": 11,
|
||||||
|
"chmod": "a+x"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
2
.github/workflows/test.yml
vendored
2
.github/workflows/test.yml
vendored
@@ -177,7 +177,7 @@ jobs:
|
|||||||
id: upload
|
id: upload
|
||||||
uses: actions/upload-artifact@v4
|
uses: actions/upload-artifact@v4
|
||||||
with:
|
with:
|
||||||
name: test_results.${{matrix.feat_set}}.${{matrix.sys_name}}.${{matrix.sys_target}}.jsonl
|
name: test_results-${{matrix.feat_set}}-${{matrix.sys_name}}-${{matrix.sys_target}}.jsonl
|
||||||
path: ./tests/test_results/complement/test_results.jsonl
|
path: ./tests/test_results/complement/test_results.jsonl
|
||||||
|
|
||||||
- name: Accept
|
- name: Accept
|
||||||
|
|||||||
@@ -579,7 +579,7 @@ target "static" {
|
|||||||
tags = [
|
tags = [
|
||||||
elem_tag("static", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
elem_tag("static", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target], "latest"),
|
||||||
]
|
]
|
||||||
output = ["type=docker,compression=zstd,mode=min,compression-level=${zstd_image_compress_level}"]
|
output = ["type=docker,compression=uncompressed,mode=min"]
|
||||||
matrix = cargo_rust_feat_sys
|
matrix = cargo_rust_feat_sys
|
||||||
inherits = [
|
inherits = [
|
||||||
elem("install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
elem("install", [cargo_profile, rust_toolchain, rust_target, feat_set, sys_name, sys_version, sys_target]),
|
||||||
|
|||||||
Reference in New Issue
Block a user