Skip to content

fix: disable the save button when entering an empty file name #410

fix: disable the save button when entering an empty file name

fix: disable the save button when entering an empty file name #410

name: 'Nightly Releases'
'on':
push:
branches:
- 'main'
jobs:
cancelCurrentRuns:
name: 'Cancel in-progress Workflow runs'
runs-on: 'ubuntu-22.04'
steps:
- name: 'Cancel in-progress Workflow runs'
uses: 'styfle/cancel-workflow-action@85880fa0301c86cca9da44039ee3bb12d3bedbfa'
with:
access_token: '${{ secrets.GITHUB_TOKEN }}'
deployWeb:
name: 'Deploy Web to dev.lyricistant.app'
runs-on: 'ubuntu-22.04'
needs:
- 'cancelCurrentRuns'
steps:
- name: 'Mask any potential PII'
run: "echo \"::add-mask::${{ secrets.PHONE_NUMBER }}\"\necho \"::add-mask::${{ secrets.APPLE_ID }}\""
- name: 'Checkout the current branch'
uses: 'actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11'
with:
fetch-depth: 0
- name: 'Setup Node.js - 20'
uses: 'actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8'
with:
node-version: '>=20'
cache: 'npm'
- uses: 'actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9'
name: 'Cache Node Modules'
with:
path: '~/.npm'
key: '${{ runner.os}}-node-${{ hashFiles(''**/package-lock.json'') }}'
restore-keys: '${{ runner.os }}-node-'
- name: 'Install Gulp'
run: 'npm install -g gulp@5'
- name: 'Install Node modules'
run: 'npm ci'
- name: 'Build Web'
run: 'gulp buildWeb --max-old-space-size=8192'
env:
NIGHTLY: true
- name: 'Deploy Web'
uses: 'peaceiris/actions-gh-pages@4f9cc6602d3f66b9c108549d475ec49e8ef4d45e'
with:
personal_token: '${{ secrets.LYRICISTANT_TOKEN }}'
publish_branch: 'gh-pages'
publish_dir: 'apps/web/dist/production/'
force_orphan: true
cname: 'dev.lyricistant.app'
buildIOSApp:
name: 'Build iOS'
runs-on: 'macos-13'
steps:
- name: 'Mask any potential PII'
run: "echo \"::add-mask::${{ secrets.PHONE_NUMBER }}\"\necho \"::add-mask::${{ secrets.APPLE_ID }}\""
- name: 'Checkout the current branch'
uses: 'actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11'
with:
fetch-depth: 0
- name: 'Setup Node.js - 20'
uses: 'actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8'
with:
node-version: '>=20'
cache: 'npm'
- uses: 'actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9'
name: 'Cache Node Modules'
with:
path: '~/.npm'
key: '${{ runner.os}}-node-${{ hashFiles(''**/package-lock.json'') }}'
restore-keys: '${{ runner.os }}-node-'
- name: 'Install Gulp'
run: 'npm install -g gulp@5'
- name: 'Setup Ruby'
uses: 'ruby/setup-ruby@6bd3d993c602f6b675728ebaecb2b569ff86e99b'
with:
bundler-cache: true
- name: 'Setup Java 17'
uses: 'actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9'
with:
java-version: 17
distribution: 'temurin'
- name: 'Install Fastlane'
run: 'gem install bundler && bundle install'
- name: 'Install Node modules'
run: 'npm ci'
- name: 'Create App Store Connect credentials'
run: 'echo "${{ secrets.APP_STORE_CONNECT_KEY }}" | base64 --decode > apps/mobile/ios/authkey.p8'
- name: 'Bundle Mobile'
run: 'gulp bundleIOS --max-old-space-size=8192'
env:
NIGHTLY: true
- name: 'Build iOS'
run: 'bundle exec fastlane ios release'
env:
APP_STORE_KEY_ID: '${{ secrets.APP_STORE_KEY_ID }}'
APP_STORE_ISSUER_ID: '${{ secrets.APP_STORE_ISSUER_ID }}'
FIRST_NAME: 'Wardell'
LAST_NAME: 'Bagby'
PHONE: '${{ secrets.PHONE }}'
EMAIL: '${{ secrets.APPLE_ID }}'
MATCH_GIT_BASIC_AUTHORIZATION: '${{ secrets.MATCH_GIT_BASIC_AUTHORIZATION }}'
MATCH_PASSWORD: '${{ secrets.MATCH_PASSWORD }}'
- name: 'Upload iOS app'
uses: 'actions/upload-artifact@1746f4ab65b179e0ea60a494b83293b640dd5bba'
with:
name: 'ios-app'
path: 'apps/mobile/dist/ios/*.ipa'
needs:
- 'cancelCurrentRuns'
buildAndroidApp:
name: 'Build Android'
runs-on: 'ubuntu-22.04'
steps:
- name: 'Mask any potential PII'
run: "echo \"::add-mask::${{ secrets.PHONE_NUMBER }}\"\necho \"::add-mask::${{ secrets.APPLE_ID }}\""
- name: 'Checkout the current branch'
uses: 'actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11'
with:
fetch-depth: 0
- name: 'Setup Node.js - 20'
uses: 'actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8'
with:
node-version: '>=20'
cache: 'npm'
- uses: 'actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9'
name: 'Cache Node Modules'
with:
path: '~/.npm'
key: '${{ runner.os}}-node-${{ hashFiles(''**/package-lock.json'') }}'
restore-keys: '${{ runner.os }}-node-'
- name: 'Install Gulp'
run: 'npm install -g gulp@5'
- name: 'Setup Ruby'
uses: 'ruby/setup-ruby@6bd3d993c602f6b675728ebaecb2b569ff86e99b'
with:
bundler-cache: true
- name: 'Setup Java 17'
uses: 'actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9'
with:
java-version: 17
distribution: 'temurin'
- name: 'Install Fastlane'
run: 'gem install bundler && bundle install'
- name: 'Install Node modules'
run: 'npm ci'
- name: 'Populate keystore'
run: 'echo "${{ secrets.KEYSTORE }}" | base64 --decode > apps/mobile/android/android.keystore'
- name: 'Populate keystore properties'
run: 'echo "${{ secrets.KEYSTORE_PROPERTIES }}" | base64 --decode > apps/mobile/android/keystore.properties'
- name: 'Populate Play Store credentials'
run: 'echo "${{ secrets.PLAY_STORE_CREDS }}" | base64 --decode > play-store-credentials.json'
- name: 'Bundle Mobile'
run: 'gulp bundleAndroid --max-old-space-size=8192'
env:
NIGHTLY: true
- name: 'Build Android'
run: 'bundle exec fastlane android release'
- name: 'Upload Android app'
uses: 'actions/upload-artifact@1746f4ab65b179e0ea60a494b83293b640dd5bba'
with:
name: 'android-app'
path: 'apps/mobile/dist/android/*.apk'
needs:
- 'cancelCurrentRuns'
buildElectronApps:
name: 'Build Electron Apps'
runs-on: 'macos-13'
steps:
- name: 'Mask any potential PII'
run: "echo \"::add-mask::${{ secrets.PHONE_NUMBER }}\"\necho \"::add-mask::${{ secrets.APPLE_ID }}\""
- name: 'Checkout the current branch'
uses: 'actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11'
with:
fetch-depth: 0
- name: 'Setup Node.js - 20'
uses: 'actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8'
with:
node-version: '>=20'
cache: 'npm'
- uses: 'actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9'
name: 'Cache Node Modules'
with:
path: '~/.npm'
key: '${{ runner.os}}-node-${{ hashFiles(''**/package-lock.json'') }}'
restore-keys: '${{ runner.os }}-node-'
- name: 'Install Gulp'
run: 'npm install -g gulp@5'
- name: 'Install Node modules'
run: 'npm ci'
- name: 'Build Electron apps'
uses: 'nick-invision/retry@7152eba30c6575329ac0576536151aca5a72780e'
env:
CSC_LINK: '${{ secrets.MACOS_CERT }}'
CSC_KEY_PASSWORD: '${{ secrets.MACOS_CERT_PASSWORD }}'
APPLE_ID: '${{ secrets.APPLE_ID }}'
APPLE_ID_PASSWORD: '${{ secrets.APPLE_ID_PASSWORD }}'
NIGHTLY: true
with:
timeout_minutes: 60
max_attempts: 3
command: 'gulp buildAllElectronApps --max-old-space-size=8192'
- name: 'Upload Electron apps'
uses: 'actions/upload-artifact@1746f4ab65b179e0ea60a494b83293b640dd5bba'
with:
name: 'electron-apps'
path: 'apps/electron/dist/production/app/*.*'
needs:
- 'cancelCurrentRuns'
createGithubRelease:
name: 'Create Github Nightly Release'
runs-on: 'ubuntu-22.04'
needs:
- 'buildIOSApp'
- 'buildElectronApps'
- 'buildAndroidApp'
steps:
- name: 'Mask any potential PII'
run: "echo \"::add-mask::${{ secrets.PHONE_NUMBER }}\"\necho \"::add-mask::${{ secrets.APPLE_ID }}\""
- name: 'Checkout the current branch'
uses: 'actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11'
with:
fetch-depth: 0
- name: 'Setup Node.js - 20'
uses: 'actions/setup-node@60edb5dd545a775178f52524783378180af0d1f8'
with:
node-version: '>=20'
cache: 'npm'
- uses: 'actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9'
name: 'Cache Node Modules'
with:
path: '~/.npm'
key: '${{ runner.os}}-node-${{ hashFiles(''**/package-lock.json'') }}'
restore-keys: '${{ runner.os }}-node-'
- name: 'Install Gulp'
run: 'npm install -g gulp@5'
- name: 'Install Node modules'
run: 'npm ci'
- name: 'Create Github release notes'
run: './scripts/create_release_changelog.ts all release.txt unreleased'
- name: 'Download iOS app'
uses: 'actions/download-artifact@8caf195ad4b1dee92908e23f56eeb0696f1dd42d'
with:
name: 'ios-app'
path: '/tmp/artifacts'
- name: 'Download Electron apps'
uses: 'actions/download-artifact@8caf195ad4b1dee92908e23f56eeb0696f1dd42d'
with:
name: 'electron-apps'
path: '/tmp/artifacts'
- name: 'Download Android app'
uses: 'actions/download-artifact@8caf195ad4b1dee92908e23f56eeb0696f1dd42d'
with:
name: 'android-app'
path: '/tmp/artifacts'
- name: 'Delete current nightly tag and release'
uses: 'dev-drprasad/delete-tag-and-release/@82600feb9527126eca69833f07bafe53279bd9b4'
with:
delete_release: true
tag_name: 'latest'
github_token: '${{ secrets.GITHUB_TOKEN }}'
- name: 'Wait for tag deletion to be propagated'
run: 'sleep 30s'
- name: 'Create Nightly Github release'
uses: 'softprops/action-gh-release@9d7c94cfd0a1f3ed45544c887983e9fa900f0564'
with:
token: '${{ secrets.GITHUB_TOKEN }}'
body_path: 'release.txt'
files: '/tmp/artifacts/*.*'
name: 'Lyricistant - Nightly'
tag_name: 'latest'
prerelease: true