Ich hasse Docker.
Aber wie dem auch sei: Browserstack stellt freundlicherweise ein Docker Image zur Verfügung und schreibt in der Readme viel von docker run
und nichts von docker-compose
. So will ich das aber nutzen; genaugenommen in einer docker-compose.yml
. Und wenn man nun, wie ich, Docker hasst, hilft einem auch der kurze Hinweis
- Optionally you can also set the
BS_KEY
env variable inside the image itself.
nicht nur nichts, er verwirrt nur. Denn ich für meinen Teil habe keine Ahnung, was damit gemeint ist, aber es ist auf jeden Fall keine “env” aka environment
Variable in der .yml
. Die wird nämlich nicht angenommen:
[ERROR] Please provide the “–key” parameter followed by your BrowserStack key
[ERROR] Find your key here: https://www.browserstack.com/accounts/settings
Und wenn man dann googelt, finden sich noch n+1 andere Schreibweisen, die aber alle nicht als environment
Variable funktionieren: BS_KEY, BS_ACCESS_KEY, BROWSERSTACK_ACCESS_KEY, BROWSERSTACK_LOCAL_KEY, BROWSERSTACK_ACCESSKEY. Lange Rede, kurzer Sinn: Der Key muss ohne Variablenname im command übergeben werden:
1 2 3 4 5 |
browserstack: image: browserstack/local networks: - acme_network command: xyzMyKey123 |
🙄
Für die Akten: Die Fehlermeldung
[ERROR] Please provide a valid key, available here: https://www.browserstack.com/accounts/settings
[ERROR] DATA_INCORRECT:3001 https://browserstack.com/docs/local-testing/binary/errors/3001
kommt genau daher, dass man fälschlicherweise sowas wie command: BS_KEY=xyzMyKey123
oder so übergibt. Immerhin scheint auch command: --key xyzMyKey123
(also mit --key
) zu funktionieren, das leuchtet mir zumindest ein wenig ein – und das liegt vermutlich weniger an Docker, als an der BS Binary.