mirror of
https://github.com/OCEAN-xyz/datum-gateway-startos.git
synced 2025-05-12 19:20:43 +02:00
add build github workflows
This commit is contained in:
parent
5e0a559add
commit
e6e2b51c22
37
.github/workflows/buildService.yml
vendored
Normal file
37
.github/workflows/buildService.yml
vendored
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
name: Build Service
|
||||||
|
|
||||||
|
on:
|
||||||
|
workflow_dispatch:
|
||||||
|
pull_request:
|
||||||
|
paths-ignore: ['*.md']
|
||||||
|
branches: ['main', 'master']
|
||||||
|
push:
|
||||||
|
paths-ignore: ['*.md']
|
||||||
|
branches: ['main', 'master']
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
BuildPackage:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
steps:
|
||||||
|
- name: Prepare StartOS SDK
|
||||||
|
uses: Start9Labs/sdk@v1
|
||||||
|
|
||||||
|
- name: Checkout services repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Build the service package
|
||||||
|
id: build
|
||||||
|
run: |
|
||||||
|
git submodule update --init --recursive
|
||||||
|
start-sdk init
|
||||||
|
make
|
||||||
|
PACKAGE_ID=$(yq -oy ".id" manifest.*)
|
||||||
|
echo "package_id=$PACKAGE_ID" >> $GITHUB_ENV
|
||||||
|
printf "\n SHA256SUM: $(sha256sum ${PACKAGE_ID}.s9pk) \n"
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Upload .s9pk
|
||||||
|
uses: actions/upload-artifact@v4
|
||||||
|
with:
|
||||||
|
name: ${{ env.package_id }}.s9pk
|
||||||
|
path: ./${{ env.package_id }}.s9pk
|
72
.github/workflows/releaseService.yml
vendored
Normal file
72
.github/workflows/releaseService.yml
vendored
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
name: Release Service
|
||||||
|
|
||||||
|
on:
|
||||||
|
push:
|
||||||
|
tags:
|
||||||
|
- 'v*.*'
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
ReleasePackage:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
permissions:
|
||||||
|
contents: write
|
||||||
|
steps:
|
||||||
|
- name: Prepare StartOS SDK
|
||||||
|
uses: Start9Labs/sdk@v1
|
||||||
|
|
||||||
|
- name: Checkout services repository
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
|
||||||
|
- name: Build the service package
|
||||||
|
run: |
|
||||||
|
git submodule update --init --recursive
|
||||||
|
start-sdk init
|
||||||
|
make
|
||||||
|
|
||||||
|
- name: Setting package ID and title from the manifest
|
||||||
|
id: package
|
||||||
|
run: |
|
||||||
|
echo "package_id=$(yq -oy ".id" manifest.*)" >> $GITHUB_ENV
|
||||||
|
echo "package_title=$(yq -oy ".title" manifest.*)" >> $GITHUB_ENV
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Generate sha256 checksum
|
||||||
|
run: |
|
||||||
|
PACKAGE_ID=${{ env.package_id }}
|
||||||
|
printf "\n SHA256SUM: $(sha256sum ${PACKAGE_ID}.s9pk) \n"
|
||||||
|
sha256sum ${PACKAGE_ID}.s9pk > ${PACKAGE_ID}.s9pk.sha256
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Generate changelog
|
||||||
|
run: |
|
||||||
|
PACKAGE_ID=${{ env.package_id }}
|
||||||
|
echo "## What's Changed" > change-log.txt
|
||||||
|
yq -oy '.release-notes' manifest.* >> change-log.txt
|
||||||
|
echo "## SHA256 Hash" >> change-log.txt
|
||||||
|
echo '```' >> change-log.txt
|
||||||
|
sha256sum ${PACKAGE_ID}.s9pk >> change-log.txt
|
||||||
|
echo '```' >> change-log.txt
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Create GitHub Release
|
||||||
|
uses: softprops/action-gh-release@v2
|
||||||
|
with:
|
||||||
|
tag_name: ${{ github.ref_name }}
|
||||||
|
name: ${{ env.package_title }} ${{ github.ref_name }}
|
||||||
|
prerelease: true
|
||||||
|
body_path: change-log.txt
|
||||||
|
files: |
|
||||||
|
./${{ env.package_id }}.s9pk
|
||||||
|
./${{ env.package_id }}.s9pk.sha256
|
||||||
|
|
||||||
|
- name: Publish to Registry
|
||||||
|
env:
|
||||||
|
S9USER: ${{ secrets.S9USER }}
|
||||||
|
S9PASS: ${{ secrets.S9PASS }}
|
||||||
|
S9REGISTRY: ${{ secrets.S9REGISTRY }}
|
||||||
|
run: |
|
||||||
|
if [[ -z "$S9USER" || -z "$S9PASS" || -z "$S9REGISTRY" ]]; then
|
||||||
|
echo "Publish skipped: missing registry credentials."
|
||||||
|
else
|
||||||
|
start-sdk publish https://$S9USER:$S9PASS@$S9REGISTRY ${{ env.package_id }}.s9pk
|
||||||
|
fi
|
Loading…
Reference in New Issue
Block a user