mirror of
https://github.com/boostorg/build.git
synced 2026-01-24 17:52:26 +00:00
85 lines
2.6 KiB
YAML
85 lines
2.6 KiB
YAML
# Copyright 2023 René Ferdinand Rivera Morell
|
|
# Use, modification, and distribution are subject to the
|
|
# Boost Software License, Version 1.0. (See accompanying file LICENSE.txt)
|
|
|
|
name: "Release: Archives"
|
|
|
|
on:
|
|
# Allow manual runs.
|
|
workflow_dispatch:
|
|
# Run on publishing of releases.
|
|
release: { types: [published] }
|
|
# And run on pushes, for main and release branches.
|
|
push:
|
|
branches: ["main", "release", "version/*"]
|
|
paths-ignore:
|
|
[
|
|
".circleci/**",
|
|
".cirrus.yml",
|
|
".drone.star",
|
|
".semaphore/**",
|
|
".travis.yml",
|
|
"appveyor.yml",
|
|
"azure-pipelines.yml",
|
|
".ci/azp-*.yml",
|
|
]
|
|
|
|
jobs:
|
|
archive:
|
|
strategy:
|
|
matrix:
|
|
include:
|
|
- { name: "Zip", format: "zip", command: "zip -r -9" }
|
|
- {
|
|
name: "7z",
|
|
format: "7z",
|
|
command: "7za a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on",
|
|
}
|
|
- { name: "BZip2", format: "tar.bz2", command: "tar -cv -j -f" }
|
|
# - { name: "Zstd", format: "tar.zstd", command: "tar -cv --zstd -f" }
|
|
runs-on: ubuntu-latest
|
|
name: ${{ matrix.name }}
|
|
steps:
|
|
- name: "Checkout"
|
|
uses: actions/checkout@main
|
|
with: { path: "b2" }
|
|
|
|
- name: "Snapshot"
|
|
run: |
|
|
cd "${{github.workspace}}/b2"
|
|
version=`basename ${{github.ref_name}}`
|
|
git archive --format=tar --output="${{github.workspace}}/b2-${version}.tar" "${{github.ref_name}}"
|
|
cd "${{github.workspace}}"
|
|
mkdir "b2-${version}"
|
|
cd "b2-${version}"
|
|
tar -xvf "${{github.workspace}}/b2-${version}.tar"
|
|
rm -rf "${{github.workspace}}/b2-${version}.tar"
|
|
cd "${{github.workspace}}"
|
|
ls -laF
|
|
|
|
- name: "Archive"
|
|
run: |
|
|
cd "${{github.workspace}}"
|
|
version=`basename ${{github.ref_name}}`
|
|
archive="${{github.workspace}}/b2-${version}.${{matrix.format}}"
|
|
${{matrix.command}} "${archive}" "b2-${version}"
|
|
sha256sum -b "${archive}" > "${archive}.sha256sum.txt"
|
|
|
|
- name: "Cleanup"
|
|
run: |
|
|
cd "${{github.workspace}}"
|
|
version=`basename ${{github.ref_name}}`
|
|
rm -rf "${{github.workspace}}/b2-${version}"
|
|
|
|
- name: "Upload"
|
|
uses: actions/upload-artifact@main
|
|
with:
|
|
name: B2-${{matrix.name}}
|
|
path: "${{github.workspace}}/b2-*"
|
|
|
|
- name: "Publish"
|
|
uses: softprops/action-gh-release@master
|
|
if: ${{ github.event_name == 'release' && github.event.action == 'published' }}
|
|
with:
|
|
files: "${{github.workspace}}/b2-*"
|