-
-
Notifications
You must be signed in to change notification settings - Fork 52
135 lines (118 loc) · 4.31 KB
/
CI.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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
---
name: CI
# yamllint disable-line rule:truthy
on:
[push, workflow_dispatch]
jobs:
Mainline:
runs-on: ubuntu-22.04
steps:
- name: 'Checkout LTS Repo'
uses: actions/checkout@v4
- name: Get version
run: |
VERSION=$(grep ^KERNEL_VERSION build.sh | head -n1| cut -d = -f2)
REL=$(grep "PKGREL=\d*" build.sh | cut -d = -f2)
echo "ver=${VERSION}" >> $GITHUB_ENV
echo "release=${REL}" >> $GITHUB_ENV
- name: 'Checkout mainline Repo'
uses: actions/checkout@v4
with:
ref: mainline
persist-credentials: false
- name: 'Push new version to mainline'
id: publish
run: |
sed -i "s/KERNEL_VERSION=6.*/KERNEL_VERSION=${{ env.ver }}/g" build.sh
sed -i "s/PKGREL=.*/PKGREL=${{ env.release }}/g" build.sh
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git commit -m "${{ env.ver }}-${{ env.release }}" -a
- name: Push changes to the repo
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.PAT }}
branch: mainline
Kubuntu:
runs-on: ubuntu-22.04
steps:
- name: 'Checkout LTS Repo'
uses: actions/checkout@v4
- name: Get version
run: |
VERSION=$(grep ^KERNEL_VERSION build.sh | head -n1| cut -d = -f2)
REL=$(grep "PKGREL=\d*" build.sh | cut -d = -f2)
echo "ver=${VERSION}" >> $GITHUB_ENV
echo "release=${REL}" >> $GITHUB_ENV
- name: 'Checkout kubuntuLTS Repo'
uses: actions/checkout@v4
with:
ref: kubuntuLTS
persist-credentials: false
- name: 'Push new version to kubuntuLTS'
id: publish
run: |
sed -i "s/KERNEL_VERSION=6.*/KERNEL_VERSION=${{ env.ver }}/g" build.sh
sed -i "s/PKGREL=.*/PKGREL=${{ env.release }}/g" build.sh
git config --local user.email "41898282+github-actions[bot]@users.noreply.github.com"
git config --local user.name "github-actions[bot]"
git commit -m "${{ env.ver }}-${{ env.release }}" -a
- name: Push changes to the repo
uses: ad-m/github-push-action@master
with:
github_token: ${{ secrets.PAT }}
branch: kubuntuLTS
ISO:
runs-on: ubuntu-22.04
steps:
- uses: actions/checkout@v4
- name: Build
run: sudo ./build_in_docker.sh
- name: print sha256sum
run: cat output/sha256*
- name: Generate Tag
id: tag
run: |
VER=$(egrep ^KERNEL_VERSION build.sh|cut -d= -f2)
REL=$(grep "PKGREL=\d*" build.sh | cut -d = -f2)
echo Version is $VER
echo "isotag=${VER}-${REL}" >> $GITHUB_ENV
- name: Upload iso artifact
uses: actions/upload-artifact@v4
with:
name: mbp-ubuntu-${{ steps.tag.outputs.tag }}.z01
path: ${{ github.workspace }}/output/*
- name: Instructions for putting it back together
run: |
cat << EOF
Download all the artifacts, and put them in a folder
without other files. Then run:"
unzip "*.z??.zip"
cat livecd-${{ env.isotag }}-t2.z?? > cd.zip
echo unzip cd.zip
EOF
- name: Compress ISO
run: |
cd ${{ github.workspace }}
mkdir ISO
mv ${{ github.workspace }}/*.iso ${{ github.workspace }}/ISO
cd ISO
ISONAME=$(ls ${{ github.workspace }}/ISO | grep .iso | rev | cut -c 5- | rev)
tar -czvf ${ISONAME}.tar.gz ${ISONAME}.iso
ls -l
- name: Get the ISO script
run: |
sudo cp ${{ github.workspace }}/.github/workflows/iso.sh ${{ github.workspace }}/output/iso.sh
- name: Release
if: github.ref == 'refs/heads/LTS'
uses: softprops/action-gh-release@v2
with:
#files: ${{ github.workspace }}/ISO/*.tar.gz
#files: ${{ github.workspace }}/ISO/*.iso
files: ${{ github.workspace }}/output/*
tag_name: v${{ env.isotag }}
body_path: ${{ github.workspace }}/.github/workflows/instructions.txt
draft: false
prerelease: false
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}