Skip to content

Commit 351c503

Browse files
committed
Add release script
1 parent 4e1c58a commit 351c503

File tree

3 files changed

+126
-2
lines changed

3 files changed

+126
-2
lines changed

.github/workflows/build.yml

Lines changed: 83 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,83 @@
1+
name: Build release
2+
3+
on:
4+
workflow_dispatch:
5+
inputs:
6+
asl_version:
7+
description: "Optional: asl version to use as tag_name (leave blank to use the latest remote version)"
8+
required: false
9+
release_name:
10+
description: "Optional: Custom release name (asl v* release)"
11+
required: false
12+
push:
13+
branches: [ "main" ]
14+
paths:
15+
- **
16+
pull_request:
17+
18+
jobs:
19+
check_update:
20+
name: Check update
21+
runs-on: ubuntu-latest
22+
steps:
23+
- name: Check latest version
24+
id: check_version
25+
run: |
26+
remote_version=$(curl -L https://api.github.com/repos/Moe-hacker/asl/releases/latest | jq -r .tag_name)
27+
remote_name=$(curl -L https://api.github.com/repos/Moe-hacker/asl/releases/latest | jq -r .name)
28+
echo "remote_version=$remote_version" | tee -a $GITHUB_OUTPUT
29+
echo "remote_name=$remote_name" | tee -a $GITHUB_OUTPUT
30+
outputs:
31+
remote_version: ${{ steps.check_version.outputs.remote_version }}
32+
remote_name: ${{ steps.check_version.outputs.remote_name }}
33+
34+
build:
35+
name: Build
36+
needs: check_update
37+
runs-on: ubuntu-latest
38+
permissions:
39+
contents: write
40+
steps:
41+
- name: Set env
42+
run: |
43+
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
44+
if [ -n "${{ github.event.inputs.asl_version }}" ]; then
45+
echo "version=${{ github.event.inputs.asl_version }}" | tee -a $GITHUB_ENV
46+
else
47+
echo "version=${{ needs.check_update.outputs.remote_version }}" | tee -a $GITHUB_ENV
48+
fi
49+
50+
if [ -n "${{ github.event.inputs.release_name }}" ]; then
51+
echo "release_name=${{ github.event.inputs.release_name }}" | tee -a $GITHUB_ENV
52+
elif [ -n "${{ github.event.inputs.asl_version }}" ]; then
53+
echo "release_name=${{ github.event.inputs.asl_version }}" | tee -a $GITHUB_ENV
54+
else
55+
echo "release_name=${{ needs.check_update.outputs.remote_name }}" | tee -a $GITHUB_ENV
56+
fi
57+
else
58+
echo "version=${{ needs.check_update.outputs.remote_version }}" | tee -a $GITHUB_ENV
59+
echo "release_name=${{ needs.check_update.outputs.remote_name }}" | tee -a $GITHUB_ENV
60+
fi
61+
echo "build_time=$(TZ=Asia/Shanghai date '+%Y%m%d%H%M')" | tee -a $GITHUB_ENV
62+
63+
- uses: actions/checkout@v4
64+
- name: Build-Release
65+
run: |
66+
apt install -y zip
67+
bash build/build.sh
68+
69+
- name: Release
70+
uses: softprops/action-gh-release@v2
71+
with:
72+
tag_name: ${{ env.version }}
73+
name: ${{ env.release_name }}
74+
body: |
75+
You can only install one of these modules.
76+
prerelease: false
77+
files: |
78+
${{ github.workspace }}asl-archlinux-current.zip
79+
${{ github.workspace }}/asl-alpine-edge.zip
80+
${{ github.workspace }}/asl-centos-9-Stream.zip
81+
${{ github.workspace }}/asl-debian-bookworm.zip
82+
${{ github.workspace }}/asl-ubuntu-jammy.zip
83+
${{ github.workspace }}/asl-ubuntu-oracular.zip

build/build.sh

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
OS="archlinux"
2+
VERSION="current"
3+
sed -i "s/RURIMA_LXC_OS=\".*\"/RURIMA_LXC_OS=\"${OS}\"/g" config.conf
4+
sed -i "s/RURIMA_LXC_OS_VERSION=\".*\"/RURIMA_LXC_OS_VERSION=\"${VERSION}\"/g" config.conf
5+
zip -r ../asl-$OS-$VERSION.zip .
6+
echo asl-$OS-$VERSION.zip
7+
8+
OS="alpine"
9+
VERSION="edge"
10+
sed -i "s/RURIMA_LXC_OS=\".*\"/RURIMA_LXC_OS=\"${OS}\"/g" config.conf
11+
sed -i "s/RURIMA_LXC_OS_VERSION=\".*\"/RURIMA_LXC_OS_VERSION=\"${VERSION}\"/g" config.conf
12+
zip -r ../asl-$OS-$VERSION.zip .
13+
echo asl-$OS-$VERSION.zip
14+
15+
OS="centos"
16+
VERSION="9-Stream"
17+
sed -i "s/RURIMA_LXC_OS=\".*\"/RURIMA_LXC_OS=\"${OS}\"/g" config.conf
18+
sed -i "s/RURIMA_LXC_OS_VERSION=\".*\"/RURIMA_LXC_OS_VERSION=\"${VERSION}\"/g" config.conf
19+
zip -r ../asl-$OS-$VERSION.zip .
20+
echo asl-$OS-$VERSION.zip
21+
22+
OS="debian"
23+
VERSION="bookworm"
24+
sed -i "s/RURIMA_LXC_OS=\".*\"/RURIMA_LXC_OS=\"${OS}\"/g" config.conf
25+
sed -i "s/RURIMA_LXC_OS_VERSION=\".*\"/RURIMA_LXC_OS_VERSION=\"${VERSION}\"/g" config.conf
26+
zip -r ../asl-$OS-$VERSION.zip .
27+
echo asl-$OS-$VERSION.zip
28+
29+
OS="ubuntu"
30+
VERSION="jammy"
31+
sed -i "s/RURIMA_LXC_OS=\".*\"/RURIMA_LXC_OS=\"${OS}\"/g" config.conf
32+
sed -i "s/RURIMA_LXC_OS_VERSION=\".*\"/RURIMA_LXC_OS_VERSION=\"${VERSION}\"/g" config.conf
33+
zip -r ../asl-$OS-$VERSION.zip .
34+
echo asl-$OS-$VERSION.zip
35+
36+
OS="ubuntu"
37+
VERSION="oracular"
38+
sed -i "s/RURIMA_LXC_OS=\".*\"/RURIMA_LXC_OS=\"${OS}\"/g" config.conf
39+
sed -i "s/RURIMA_LXC_OS_VERSION=\".*\"/RURIMA_LXC_OS_VERSION=\"${VERSION}\"/g" config.conf
40+
zip -r ../asl-$OS-$VERSION.zip .
41+
echo asl-$OS-$VERSION.zip

config.conf

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66
RURIMA_LXC_MIRROR="images.linuxcontainers.org"
77
# OS to install.
88
# Make sure there is setup/${RURIMA_LXC_OS}.sh
9-
RURIMA_LXC_OS="debian"
9+
RURIMA_LXC_OS="ubuntu"
1010
# OS version to install.
11-
RURIMA_LXC_OS_VERSION="bookworm"
11+
RURIMA_LXC_OS_VERSION="oracular"
1212

1313
# Add additional commands other than the system's built-in commands
1414
BUSYBOX_PATHS="

0 commit comments

Comments
 (0)