update submodules and align settings service with new IxMilia.Config … #364
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: [push, pull_request] | |
jobs: | |
build: | |
runs-on: ${{ matrix.value.os }} | |
strategy: | |
matrix: | |
value: [{ os: windows-latest, architecture: x64 }, { os: windows-latest, architecture: arm64 }, { os: ubuntu-latest, architecture: x64 }] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 99 | |
submodules: recursive | |
- uses: actions/setup-dotnet@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
- uses: actions/setup-go@v5 | |
with: | |
go-version: 1.19 | |
- name: Build and test | |
shell: pwsh | |
run: ./build-and-test.ps1 -configuration Release -architecture ${{ matrix.value.architecture }} -ci | |
- name: publish artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ env.artifact_name }} | |
path: ${{ env.artifact_path }} | |
- name: publish secondary artifact | |
uses: actions/upload-artifact@v4 | |
if: env.secondary_artifact_name != '' | |
with: | |
name: ${{ env.secondary_artifact_name }} | |
path: ${{ env.secondary_artifact_path }} | |
build_ubuntu_latest_arm64: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
fetch-depth: 99 | |
submodules: recursive | |
- name: Calculate version | |
shell: bash | |
run: echo "VERSION_SUFFIX=$(pwsh ./build/make-version.ps1 -suffix beta)" | tee -a $GITHUB_ENV | |
- uses: devcontainers/[email protected] | |
env: | |
VERSION_SUFFIX: ${{ env.VERSION_SUFFIX }} | |
with: | |
push: never | |
runCmd: ./build-and-test.ps1 -configuration Release -architecture arm64 | |
env: | | |
DOTNET_NOLOGO=true | |
DOTNET_SKIP_FIRST_TIME_EXPERIENCE=true | |
DOTNET_CLI_TELEMETRY_OPTOUT=true | |
VERSION_SUFFIX | |
- name: re-map path variables from container | |
shell: pwsh | |
run: | | |
foreach ($name in @("artifact_path", "secondary_artifact_path")) { | |
$existing = [System.Environment]::GetEnvironmentVariable($name) | |
$updated = $existing.Replace("/workspaces/bcad", "${{ github.workspace }}") | |
Write-Output "$name=$updated" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append | |
} | |
- name: publish artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: ${{ env.artifact_name }} | |
path: ${{ env.artifact_path }} | |
- name: publish secondary artifact | |
uses: actions/upload-artifact@v4 | |
if: env.secondary_artifact_name != '' | |
with: | |
name: ${{ env.secondary_artifact_name }} | |
path: ${{ env.secondary_artifact_path }} | |
create_package_feeds: | |
runs-on: ubuntu-latest | |
needs: [build, build_ubuntu_latest_arm64] | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
path: src | |
- uses: actions/download-artifact@v4 | |
with: | |
path: artifacts | |
- name: create package feed data | |
run: ./src/create-package-feeds.sh --artifacts-directory artifacts --deb-feed-path artifacts/deb-feed.tar.gz --win-feed-path artifacts/win-feed.tar.gz | |
- name: publish deb package feed artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: deb-feed | |
path: artifacts/deb-feed.tar.gz | |
- name: publish win package feed artifact | |
uses: actions/upload-artifact@v4 | |
with: | |
name: win-feed | |
path: artifacts/win-feed.tar.gz |