Secrets from --secret-file aren’t loaded when running act on Apple‑Silicon #5022
tripsee-jacob
started this conversation in
General
Replies: 1 comment 3 replies
-
Hi @tripsee-jacob, I would suggest to try naming your secrets file dotenv internals are obscure to me, as a workflow author I expect you know this YAML format pretty good. I know GITHUB_ENV / GITHUB_OUTPUT that do not use godotenv have arbitary low line length constraints due to stdlib defaults that is on my TODO. |
Beta Was this translation helpful? Give feedback.
3 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
Hi everyone 👋
I’m trying to run my Flutter CI workflow locally with act on a MacBook Pro (M‑series, macOS 15.5) and I keep hitting a signing error from yukiarrr/ios-build-action:
::error::P12 keys missing or in the wrong format.
What I’m doing:
act --secret-file my.secrets push -P macos-latest=-self-hosted --container-architecture linux/amd64
my.secrets is in classic dotenv format (no export, one line, trailing \n):
IOS_CERT_BASE64=MIITdwYJKoZIhvcNAQcC... # one long line
IOS_CERT_PASSWORD=MyStrongPassword
IOS_PROFILE_BASE64=MIINzwIBAzCCA7YG... # one long line
What I see:
A debug step prints zero for each signing secret:
IOS_CERT_BASE64 length: 0
IOS_CERT_PASSWORD length: 0
IOS_PROFILE_BASE64 length: 0
Naturally the iOS build step fails with the “P12 keys missing” error.
If I inline a secret with -s FOO=bar it does appear in the job, so act can read secrets—it just ignores every line in my.secrets.
macOS 15.5 (Apple silicon)
act version 0.2.78
Things I’ve tried:
Re‑encoded the .p12 & .mobileprovision with
base64 -b 0 -i file > my.secrets (single line, no line breaks).
Verified the file ends with a newline:
tail -c1 my.secrets | od -An -t a → nl
Removed export, quotes, whitespace, CR‑LF, BOM, etc.
Hard‑coded dummy secrets (TEST_SECRET=hello) → they are read if placed in my.secrets, so parsing isn’t completely broken.
Same secrets copy‑pasted into a GitHub repo’s Actions → Secrets work perfectly on GitHub CI.
Questions:
Is there a known dotenv edge‑case (length, characters, size) that causes all large values to be skipped?
Does act require a different flag/format for multi‑kilobyte secrets?
Any way to get act to show why it discards a line in --secret-file?
Any pointers are much appreciated—been staring at this for hours. 😅
Thanks!
Beta Was this translation helpful? Give feedback.
All reactions