Skip to content

test slack android

test slack android #65

---
name: Build and Submit Android
on:
workflow_dispatch:
push:
branches:
- ota-docs
inputs:
profile:
type: choice
description: Build profile to use
options:
- testflight-android
- production
jobs:
build:
name: Build and Submit Android
runs-on: ubuntu-latest
steps:

Check failure on line 21 in .github/workflows/build-submit-android.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/build-submit-android.yml

Invalid workflow file

You have an error in your yaml syntax on line 21
- name: Check for EXPO_TOKEN
run: >
if [ -z "${{ secrets.EXPO_TOKEN }}" ]; then
echo "You must provide an EXPO_TOKEN secret linked to this project's Expo account in this repo's secrets. Learn more: https://docs.expo.dev/eas-update/github-actions"
exit 1
fi
- name: ⬇️ Checkout
uses: actions/checkout@v4
with:
fetch-depth: 5
- name: 🔧 Setup Node
uses: actions/setup-node@v4
with:
node-version-file: .nvmrc
cache: yarn
- name: 🪛 Setup jq
uses: dcarbone/install-jq-action@v2
- name: 🔨 Setup EAS
uses: expo/expo-github-action@v8
with:
expo-version: latest
eas-version: latest
token: ${{ secrets.EXPO_TOKEN }}
- name: ⛏️ Setup EAS local builds
run: yarn global add eas-cli-local-build-plugin
# - uses: actions/setup-java@v4
# with:
# distribution: 'temurin'
# java-version: '17'
- name: ⚙️ Install dependencies
run: yarn install
# - name: 🔤 Compile translations
# run: yarn intl:build
# - name: ✏️ Write environment variables
# run: |
# export json='${{ secrets.GOOGLE_SERVICES_TOKEN }}'
# echo "${{ secrets.ENV_TOKEN }}" > .env
# echo "EXPO_PUBLIC_BUNDLE_IDENTIFIER=$(git rev-parse --short HEAD)" >> .env
# echo "EXPO_PUBLIC_BUNDLE_DATE=$(date -u +"%y%m%d%H")" >> .env
# echo "$json" > google-services.json
# - name: 🏗️ EAS Build
# run: yarn use-build-number-with-bump eas build -p android --profile ${{ inputs.profile || 'testflight-android' }} --local --output build.aab --non-interactive
# - name: ✍️ Rename Testflight bundle
# if: ${{ inputs.profile != 'production' }}
# run: mv build.aab build.apk
- name: Temp, RM me
run: |
echo "temp test" > build.aab
echo "temp test" > build.apk
- name: ⏰ Get a timestamp
id: timestamp
uses: nanzm/get-time-action@master
with:
format: 'MM-DD-HH-mm-ss'
- name: 🚀 Upload Production Artifact
id: upload-artifact-production
# if: ${{ inputs.profile == 'production' }}
uses: actions/upload-artifact@v4
with:
retention-days: 30
compression-level: 6
name: build-${{ steps.timestamp.outputs.time }}.aab
path: build.aab
# - name: 🚀 Upload Testflight Artifact
# id: upload-artifact-testflight
# if: ${{ inputs.profile != 'production' }}
# uses: actions/upload-artifact@v4
# with:
# retention-days: 30
# compression-level: 6
# name: build-${{ steps.timestamp.outputs.time }}.apk
# path: build.apk
- name: 📚 Get version from package.json
id: get-build-info
run: bash scripts/setGitHubOutputs.sh
- name: 🔔 Notify Slack of Production Build
# if: ${{ inputs.profile == 'production' }}
uses: slackapi/slack-github-action@v1.25.0
with:
payload: |
{
"text": "Android production build for Google Play Store submission is ready!\n```Artifact: ${{ steps.upload-artifact-production.outputs.artifact-url }}\nVersion Number: ${{ steps.get-build-info.outputs.PACKAGE_VERSION }}\nBuild Number: ${{ steps.get-build-info.outputs.BSKY_ANDROID_VERSION_CODE }}```"
}
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_CLIENT_ALERT_WEBHOOK }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
# - name: 🔔 Notify Slack of Testflight Build
# if: ${{ inputs.profile != 'production' }}
# uses: slackapi/slack-github-action@v1.25.0
# with:
# payload: |
# {
# "text": "Android build is ready for testing. Download the artifact here: ${{ steps.upload-artifact-testflight.outputs.artifact-url }}"
# }
# env:
# SLACK_WEBHOOK_URL: ${{ secrets.SLACK_CLIENT_ALERT_WEBHOOK }}
# SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
# - name: 🏗️ Build Production APK
# if: ${{ inputs.profile == 'production' }}
# run: yarn use-build-number-with-bump eas build -p android --profile production-apk --local --output build.apk --non-interactive
- name: 🚀 Upload Production APK Artifact
id: upload-artifact-production-apk
# if: ${{ inputs.profile == 'production' }}
uses: actions/upload-artifact@v4
with:
retention-days: 30
compression-level: 6
name: build-${{ steps.timestamp.outputs.time }}.apk
path: build.apk
- name: 🔔 Notify Slack of Production APK Build
# if: ${{ inputs.profile == 'production' }}
uses: slackapi/slack-github-action@v1.25.0
with:
payload: |
{
"text": "Android production build for GitHub/Obtanium is ready!\n```Artifact: ${{ steps.upload-artifact-production.outputs.artifact-url }}\nVersion Number: ${{ steps.get-build-info.outputs.PACKAGE_VERSION }}\nBuild Number: ${{ steps.get-build-info.outputs.BSKY_ANDROID_VERSION_CODE }}```"
}
env:
SLACK_WEBHOOK_URL: ${{ secrets.SLACK_CLIENT_ALERT_WEBHOOK }}
SLACK_WEBHOOK_TYPE: INCOMING_WEBHOOK
# - name: ⬇️ Restore Cache
# id: get-base-commit
# uses: actions/cache@v4
# if: ${{ inputs.profile == 'testflight' }}
# with:
# path: most-recent-testflight-commit.txt
# key: most-recent-testflight-commit
# - name: ✏️ Write commit hash to cache
# if: ${{ inputs.profile == 'testflight' }}
# run: echo ${{ github.sha }} > most-recent-testflight-commit.txt