Files
nix-config/.gitea/workflows/default.yaml
tomoron d965848b31
Some checks failed
Build iso when a new version is pushed / test (push) Has been cancelled
create iso only when there is a push to master
2025-04-16 14:57:32 +02:00

61 lines
1.8 KiB
YAML

name: Build iso when a new version is pushed
run-name: iso building
on:
push:
branches:
- 'master'
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: get repo
uses: actions/checkout@v4.2.2
- name: install nix
uses: https://github.com/cachix/install-nix-action@v31
- name: install go
uses: https://github.com/actions/setup-go@v4
with:
go-version: '>=1.20.1'
- name: build iso
run: make iso
- name: get commit tag
id: vars
run: echo "TAG=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
- name: create tag
run: |
git config user.name "gitea-actions"
git config user.email "actions@gitea.com"
git tag ${{steps.vars.outputs.TAG}}
git push origin ${{steps.vars.outputs.TAG}}
- name: create release
run: |
AUTH_TOKEN=${{secrets.RELEASE_TOKEN}}
TAG_NAME=${{steps.vars.outputs.TAG}}
owner=tom
repo=nix-config
set -e
release_create_res=$(curl -X POST -H "Authorization: token $AUTH_TOKEN" -H "content-type: application/json" -d "{\"tag_name\":\"$TAG_NAME\",\"name\":\"$TAG_NAME\"}" "https://git.tmoron.fr/api/v1/repos/$owner/$repo/releases" 2>/dev/null)
release_id=$(echo $release_create_res | jq -r .id)
echo $release_id
if [ $release_id == "null" ]; then
echo error
exit 1
fi
file_send_res=$(curl \
"https://git.tmoron.fr/api/v1/repos/$owner/$repo/releases/$release_id/assets?name=nixos.iso"\
-H "Authorization: token $AUTH_TOKEN"\
-H "accept: application/json"\
-H "Content-Type: multipart/form-data"\
-F "attachment=@nixos.iso" 2>/dev/null)
echo $file_send_res