Skip to content

feat: manage attached files header action #5265

feat: manage attached files header action

feat: manage attached files header action #5265

Workflow file for this run

name: Javascript CI
on:
push:
branches:
- '**'
tags:
- '**'
pull_request:
branches:
- '**'
jobs:
format:
name: Format
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up JDK 1.17
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '17'
- uses: actions/setup-node@v3
with:
node-version: '18.x'
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: yarn install
- name: Check Prettier format
run: yarn format:check
- name: Check EsLint issues
run: yarn lint
build:
name: Build & APK generation
runs-on: ubuntu-latest
needs: format
steps:
- uses: actions/checkout@v3
- name: Set up JDK 1.17
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '17'
- uses: actions/setup-node@v3
with:
node-version: '18.x'
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: yarn install
- name: Provide permission for execution
run: chmod +x android/gradlew
- name: Check packages
run: yarn build
- name: Check Android build
run: cd android && ./gradlew app:assemblePipelineRelease
- name: Rename APK
run: mv android/app/build/outputs/apk/pipeline/release/app-pipeline-release.apk android/app/build/outputs/apk/pipeline/release/${{ github.head_ref || github.ref_name }}.apk
- name: Upload APK
uses: actions/upload-artifact@v4
with:
name: ${{ github.head_ref || github.ref_name }}.apk
path: android/app/build/outputs/apk/pipeline/release/${{ github.head_ref || github.ref_name }}.apk
test:
name: Test
runs-on: ubuntu-latest
needs: format
steps:
- uses: actions/checkout@v3
- name: Set up JDK 1.17
uses: actions/setup-java@v3
with:
distribution: 'zulu'
java-version: '17'
- uses: actions/setup-node@v3
with:
node-version: '18.x'
registry-url: 'https://registry.npmjs.org'
- name: Test application
run: yarn && yarn build && yarn test
check-license-lines:
name: Check AGPL license header
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: denoland/setup-deno@main
with:
deno-version: v1.x
- name: check-license
run: deno run --allow-read https://deno.land/x/[email protected]/main.ts
create-tag-release:
needs: [format, build, check-license-lines]
if: github.event_name == 'push' && contains(github.ref, 'refs/tags/')
name: Release tag
runs-on: 'ubuntu-latest'
steps:
- name: Download site content
uses: actions/download-artifact@v4
with:
name: ${{ github.head_ref || github.ref_name }}.apk
- name: Create GitHub release
id: create-new-release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
- name: Upload release asset
uses: actions/upload-release-asset@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.create-new-release.outputs.upload_url }}
asset_path: ./${{ github.head_ref || github.ref_name }}.apk
asset_name: aom-${{ github.ref_name }}.apk
asset_content_type: application/vnd.android.package-archive
- uses: actions/checkout@v3
- uses: actions/setup-node@v3
with:
node-version: '18.x'
registry-url: 'https://registry.npmjs.org'
- name: Install dependencies
run: yarn install
- name: Check packages
run: yarn build
- name: Publish packages
run: yarn release
env:
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}