forked from github-such-software/hash-wallet
Compare commits
3 Commits
76fcee2202
...
877be71fa5
| Author | SHA1 | Date | |
|---|---|---|---|
| 877be71fa5 | |||
|
|
1e4af3dbde | ||
|
|
71da372d83 |
20
.github/workflows/build-android.yml
vendored
20
.github/workflows/build-android.yml
vendored
@@ -5,10 +5,13 @@ name: Hash Bags Android build
|
|||||||
# - PRs targeting dev/main (gate merges)
|
# - PRs targeting dev/main (gate merges)
|
||||||
# - manual via workflow_dispatch
|
# - manual via workflow_dispatch
|
||||||
on:
|
on:
|
||||||
|
# PR-from-fork triggers strip secrets in Gitea (and GitHub) for security.
|
||||||
|
# We mirror github-such-software/hash-wallet → Builds/hash-wallet via PRs,
|
||||||
|
# so a pull_request trigger here would always run without secrets.
|
||||||
|
# Listen only to push events on the destination branch (post-merge) so
|
||||||
|
# secrets are reliably available.
|
||||||
push:
|
push:
|
||||||
branches: [dev, main]
|
branches: [dev, main]
|
||||||
pull_request:
|
|
||||||
branches: [dev, main]
|
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
@@ -189,8 +192,19 @@ jobs:
|
|||||||
ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD }}
|
ANDROID_KEY_PASSWORD: ${{ secrets.ANDROID_KEY_PASSWORD }}
|
||||||
run: |
|
run: |
|
||||||
set -e
|
set -e
|
||||||
|
# Debug visibility — prints lengths only, never values. If a secret
|
||||||
|
# length is 0, Gitea Actions is not passing it to this run (most
|
||||||
|
# commonly because the run was triggered by a from-fork PR).
|
||||||
|
echo "ANDROID_KEYSTORE_BASE64 length: ${#ANDROID_KEYSTORE_BASE64}"
|
||||||
|
echo "ANDROID_KEYSTORE_PASSWORD length: ${#ANDROID_KEYSTORE_PASSWORD}"
|
||||||
|
echo "ANDROID_KEY_ALIAS length: ${#ANDROID_KEY_ALIAS}"
|
||||||
|
echo "ANDROID_KEY_PASSWORD length: ${#ANDROID_KEY_PASSWORD}"
|
||||||
if [[ -z "$ANDROID_KEYSTORE_BASE64" ]]; then
|
if [[ -z "$ANDROID_KEYSTORE_BASE64" ]]; then
|
||||||
echo "FATAL: ANDROID_KEYSTORE_BASE64 not set — configure Gitea Actions secrets first"
|
echo "FATAL: ANDROID_KEYSTORE_BASE64 not reaching the runner."
|
||||||
|
echo "Check: (1) secret is in repo Settings → Actions → Secrets;"
|
||||||
|
echo " (2) workflow was triggered by 'push' or 'workflow_dispatch'"
|
||||||
|
echo " (PR triggers from a fork strip secrets);"
|
||||||
|
echo " (3) Gitea's runner is configured to pass secrets."
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
# Write decoded keystore next to build.gradle (storeFile path
|
# Write decoded keystore next to build.gradle (storeFile path
|
||||||
|
|||||||
26
.github/workflows/build-ios-sim.yml
vendored
26
.github/workflows/build-ios-sim.yml
vendored
@@ -8,10 +8,9 @@ name: Hash Bags iOS Simulator build
|
|||||||
# Phase 2 (separate workflow): full TestFlight pipeline with signing.
|
# Phase 2 (separate workflow): full TestFlight pipeline with signing.
|
||||||
|
|
||||||
on:
|
on:
|
||||||
|
# See note in build-android.yml about Gitea PR-from-fork secret stripping.
|
||||||
push:
|
push:
|
||||||
branches: [dev, main]
|
branches: [dev, main]
|
||||||
pull_request:
|
|
||||||
branches: [dev, main]
|
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
# Cancel in-flight runs when a newer commit lands on the same branch — so a
|
# Cancel in-flight runs when a newer commit lands on the same branch — so a
|
||||||
@@ -62,11 +61,9 @@ jobs:
|
|||||||
pod --version
|
pod --version
|
||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
# Prefer Homebrew on macOS — no sudo, installs into its own prefix.
|
|
||||||
if command -v brew >/dev/null; then
|
if command -v brew >/dev/null; then
|
||||||
brew install cocoapods
|
brew install cocoapods
|
||||||
else
|
else
|
||||||
# Fallback: user-local gem install (no sudo).
|
|
||||||
export GEM_HOME="$HOME/.gem"
|
export GEM_HOME="$HOME/.gem"
|
||||||
export PATH="$GEM_HOME/bin:$PATH"
|
export PATH="$GEM_HOME/bin:$PATH"
|
||||||
echo "GEM_HOME=$HOME/.gem" >> "$GITHUB_ENV"
|
echo "GEM_HOME=$HOME/.gem" >> "$GITHUB_ENV"
|
||||||
@@ -75,6 +72,27 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
pod --version
|
pod --version
|
||||||
|
|
||||||
|
- name: Install Go + gomobile (if missing)
|
||||||
|
run: |
|
||||||
|
if ! command -v go >/dev/null; then
|
||||||
|
if command -v brew >/dev/null; then
|
||||||
|
brew install go
|
||||||
|
else
|
||||||
|
echo "Go missing and brew not available"; exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
go version
|
||||||
|
# Ensure $(go env GOPATH)/bin is on PATH for subsequent steps.
|
||||||
|
GOPATH=$(go env GOPATH)
|
||||||
|
echo "$GOPATH/bin" >> "$GITHUB_PATH"
|
||||||
|
export PATH="$PATH:$GOPATH/bin"
|
||||||
|
# gomobile + gobind are needed by scripts/build_bitbox_flutter.sh
|
||||||
|
if ! command -v gomobile >/dev/null; then
|
||||||
|
go install golang.org/x/mobile/cmd/gomobile@latest
|
||||||
|
go install golang.org/x/mobile/cmd/gobind@latest
|
||||||
|
fi
|
||||||
|
which gomobile && gomobile version || true
|
||||||
|
|
||||||
- name: Show toolchain
|
- name: Show toolchain
|
||||||
run: |
|
run: |
|
||||||
set -x
|
set -x
|
||||||
|
|||||||
19
.github/workflows/build-ios-testflight.yml
vendored
19
.github/workflows/build-ios-testflight.yml
vendored
@@ -76,6 +76,25 @@ jobs:
|
|||||||
fi
|
fi
|
||||||
pod --version
|
pod --version
|
||||||
|
|
||||||
|
- name: Install Go + gomobile (if missing)
|
||||||
|
run: |
|
||||||
|
if ! command -v go >/dev/null; then
|
||||||
|
if command -v brew >/dev/null; then
|
||||||
|
brew install go
|
||||||
|
else
|
||||||
|
echo "Go missing and brew not available"; exit 1
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
go version
|
||||||
|
GOPATH=$(go env GOPATH)
|
||||||
|
echo "$GOPATH/bin" >> "$GITHUB_PATH"
|
||||||
|
export PATH="$PATH:$GOPATH/bin"
|
||||||
|
if ! command -v gomobile >/dev/null; then
|
||||||
|
go install golang.org/x/mobile/cmd/gomobile@latest
|
||||||
|
go install golang.org/x/mobile/cmd/gobind@latest
|
||||||
|
fi
|
||||||
|
which gomobile && gomobile version || true
|
||||||
|
|
||||||
- name: Show toolchain
|
- name: Show toolchain
|
||||||
run: |
|
run: |
|
||||||
set -x
|
set -x
|
||||||
|
|||||||
6
.github/workflows/build-linux.yml
vendored
6
.github/workflows/build-linux.yml
vendored
@@ -5,10 +5,12 @@ name: Hash Bags Linux build
|
|||||||
# - on PRs targeting dev/main (gates merges)
|
# - on PRs targeting dev/main (gates merges)
|
||||||
# - manual via workflow_dispatch ("Run workflow" button in the UI)
|
# - manual via workflow_dispatch ("Run workflow" button in the UI)
|
||||||
on:
|
on:
|
||||||
|
# See note in build-android.yml about pull_request vs push triggers and
|
||||||
|
# Gitea Actions' from-fork secret stripping. Push-only here too for
|
||||||
|
# consistency (no secrets are required for Linux build today, but if we
|
||||||
|
# add any in future this avoids surprises).
|
||||||
push:
|
push:
|
||||||
branches: [dev, main]
|
branches: [dev, main]
|
||||||
pull_request:
|
|
||||||
branches: [dev, main]
|
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
|
|||||||
Reference in New Issue
Block a user