Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 8 additions & 17 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
lfs: true
with:
fetch-depth: 100
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
Expand All @@ -31,8 +31,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
lfs: true
with:
fetch-depth: 100
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
Expand All @@ -56,8 +56,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
lfs: true
with:
fetch-depth: 100
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
Expand All @@ -80,19 +80,10 @@ jobs:
build_kotlin:
name: Build and Test Kotlin
runs-on: ubuntu-latest
env:
OSSRH_USERNAME: ${{secrets.OSSRH_USERNAME}}
OSSRH_PASSWORD: ${{secrets.OSSRH_PASSWORD}}
OSSRH_USERTOKEN_USERNAME: ${{secrets.OSSRH_USERTOKEN_USERNAME}}
OSSRH_USERTOKEN_PASSWORD: ${{secrets.OSSRH_USERTOKEN_PASSWORD}}
SONATYPE_STAGING_PROFILE_ID: ${{secrets.SONATYPE_STAGING_PROFILE_ID}}
SONATYPE_SIGNING_KEY_ID: ${{secrets.SONATYPE_SIGNING_KEY_ID}}
SONATYPE_SIGNING_PASSWORD: ${{secrets.SONATYPE_SIGNING_PASSWORD}}
SONATYPE_SIGNING_KEY: ${{secrets.SONATYPE_SIGNING_KEY}}
steps:
- uses: actions/checkout@v6
with:
lfs: true
with:
fetch-depth: 100
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
Expand Down
154 changes: 18 additions & 136 deletions .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,139 +6,21 @@ on:
workflow_dispatch:

jobs:
check_sha:
name: check_sha
runs-on: ubuntu-latest
outputs:
hit: ${{ steps.cache.outputs.cache-hit == 'true' }}
steps:
- run: touch dummy.txt

- uses: actions/cache@v5
id: cache
with:
path: dummy.txt
key: check-sha-${{ github.sha }}

nighty_web:
name: Web
needs: check_sha
if: needs.check_sha.outputs.hit == 'false'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
lfs: true
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
cache: 'npm'

- run: npm run update-version -- alpha ${{github.run_number}}
- run: npm ci
- run: npm run build-web
- run: npm run build-language-server
- run: npm run build-monaco
- run: npm pack
working-directory: ./packages/alphatab/
- run: npm pack
working-directory: ./packages/vite/
- run: npm pack
working-directory: ./packages/webpack/
- run: npm pack
working-directory: ./packages/lsp/
- run: npm pack
working-directory: ./packages/monaco/

- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
registry-url: https://registry.npmjs.org/

- run: npm publish --access public --tag alpha
working-directory: ./packages/alphatab/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}

- run: npm publish --access public --tag alpha
working-directory: ./packages/vite/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}

- run: npm publish --access public --tag alpha
working-directory: ./packages/webpack/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}

- run: npm publish --access public --tag alpha
working-directory: ./packages/lsp/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}

- run: npm publish --access public --tag alpha
working-directory: ./packages/monaco/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}

nightly_csharp:
name: C#
needs: check_sha
if: needs.check_sha.outputs.hit == 'false'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
with:
lfs: true
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
cache: 'npm'

- uses: actions/setup-dotnet@v5
with:
dotnet-version: "8"

- run: npm run update-version -- alpha ${{github.run_number}}
- run: npm ci
- run: npm run build-csharp

- run: dotnet nuget push AlphaTab/bin/Release/*.nupkg -k ${{secrets.NUGET_API_KEY}} -s https://api.nuget.org/v3/index.json
working-directory: ./packages/csharp/src/
- run: dotnet nuget push AlphaTab.Windows/bin/Release/*.nupkg -k ${{secrets.NUGET_API_KEY}} -s https://api.nuget.org/v3/index.json
working-directory: ./packages/csharp/src/

nightly_kotlin_android:
name: Kotlin (Android)
needs: check_sha
if: needs.check_sha.outputs.hit == 'false'
runs-on: ubuntu-latest
env:
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{secrets.OSSRH_USERTOKEN_USERNAME}}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{secrets.OSSRH_USERTOKEN_PASSWORD}}
ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{secrets.SONATYPE_SIGNING_KEY_ID}}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{secrets.SONATYPE_SIGNING_PASSWORD}}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{secrets.SONATYPE_SIGNING_KEY}}
steps:
- uses: actions/checkout@v6
with:
lfs: true
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
cache: 'npm'

- uses: actions/setup-java@v5
with:
java-version: "19"
distribution: "temurin"

- run: npm run update-version -- alpha ${{github.run_number}}
- run: npm ci
- run: npm run build-kotlin

- run: ./gradlew publishToMavenCentral
working-directory: ./packages/kotlin/src/

- run: ./gradlew --stop
working-directory: ./packages/kotlin/src/

web:
uses: ./.github/workflows/~publish_web.yml
secrets: inherit
with:
version: alpha ${{github.run_number}}
npm_tag: alpha

dotnet:
uses: ./.github/workflows/~publish_dotnet.yml
secrets: inherit
with:
version: alpha ${{github.run_number}}

kotlin:
uses: ./.github/workflows/~publish_kotlin.yml
secrets: inherit
with:
version: alpha ${{github.run_number}}
129 changes: 20 additions & 109 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,116 +19,27 @@ on:
default: true

jobs:
release_web:
name: Web
runs-on: ubuntu-latest
web:
uses: ./.github/workflows/~publish_web.yml
secrets: inherit
if: (github.event_name == 'push') || (github.event_name == 'workflow_dispatch' && github.event.inputs.release_web == 'true')
steps:
- uses: actions/checkout@v6
with:
lfs: true
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'

- run: npm run update-version -- ${{github.run_number}}
- run: npm ci
- run: npm run build-web
- run: npm run build-language-server
- run: npm run build-monaco
- run: npm pack
working-directory: ./packages/alphatab/
- run: npm pack
working-directory: ./packages/vite/
- run: npm pack
working-directory: ./packages/webpack/
- run: npm pack
working-directory: ./packages/lsp/
- run: npm pack
working-directory: ./packages/monaco/
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
registry-url: https://registry.npmjs.org/
- name: Publish to NPM (alphaTab release)
run: npm publish --access public
working-directory: ./packages/alphatab/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}
- name: Publish to NPM (Vite Plugin release)
run: npm publish --access public
working-directory: ./packages/vite/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}
- name: Publish to NPM (Webpack release)
run: npm publish --access public
working-directory: ./packages/webpack/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}
- name: Publish to NPM (Language Server release)
run: npm publish --access public
working-directory: ./packages/lsp/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}
- name: Publish to NPM (Monaco release)
run: npm publish --access public
working-directory: ./packages/monaco/
env:
NODE_AUTH_TOKEN: ${{secrets.NPMJS_AUTH_TOKEN}}

release_csharp:
name: C#
runs-on: ubuntu-latest
with:
version: ${{github.run_number}}
npm_tag: latest
force: true

dotnet:
uses: ./.github/workflows/~publish_dotnet.yml
secrets: inherit
if: (github.event_name == 'push') || (github.event_name == 'workflow_dispatch' && github.event.inputs.release_csharp == 'true')
steps:
- uses: actions/checkout@v6
with:
lfs: true
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'
- uses: actions/setup-dotnet@v5
with:
dotnet-version: '8'
env:
NUGET_AUTH_TOKEN: ${{secrets.NUGET_API_KEY}}
- run: npm run update-version -- ${{github.run_number}}
- run: npm ci
- run: npm run build-csharp
- run: dotnet nuget push AlphaTab/bin/Release/*.nupkg -k ${{secrets.NUGET_API_KEY}} -s https://api.nuget.org/v3/index.json --skip-duplicate
working-directory: ./packages/csharp/src/
- run: dotnet nuget push AlphaTab.Windows/bin/Release/*.nupkg -k ${{secrets.NUGET_API_KEY}} -s https://api.nuget.org/v3/index.json --skip-duplicate
working-directory: ./packages/csharp/src/
with:
version: ${{github.run_number}}
force: true

release_kotlin_android:
name: Kotlin (Android)
runs-on: windows-latest
kotlin:
uses: ./.github/workflows/~publish_kotlin.yml
secrets: inherit
if: (github.event_name == 'push') || (github.event_name == 'workflow_dispatch' && github.event.inputs.release_kotlin_android == 'true')
env:
ORG_GRADLE_PROJECT_mavenCentralUsername: ${{secrets.OSSRH_USERTOKEN_USERNAME}}
ORG_GRADLE_PROJECT_mavenCentralPassword: ${{secrets.OSSRH_USERTOKEN_PASSWORD}}
ORG_GRADLE_PROJECT_signingInMemoryKeyId: ${{secrets.SONATYPE_SIGNING_KEY_ID}}
ORG_GRADLE_PROJECT_signingInMemoryKeyPassword: ${{secrets.SONATYPE_SIGNING_PASSWORD}}
ORG_GRADLE_PROJECT_signingInMemoryKey: ${{secrets.SONATYPE_SIGNING_KEY}}
steps:
- uses: actions/checkout@v6
with:
lfs: true
- uses: actions/setup-node@v6
with:
node-version: 'lts/*'

- uses: actions/setup-java@v5
with:
java-version: "19"
distribution: "temurin"

- run: npm run update-version -- ${{github.run_number}}
- run: npm ci
- run: npm run build-kotlin
- run: ./gradlew publishToMavenCentral
working-directory: ./packages/kotlin/src/

- run: ./gradlew --stop
working-directory: ./packages/kotlin/src/

with:
version: ${{github.run_number}}
force: true
Loading
Loading