Composite github action to prepare a terraform plan for review into a pull request.
Prepare everything needed for a Nodejs app in a monorepo (cache, dependencies, ...)
Not webpack.
Ok so false signal, looks like related to another dependency upgrade (webpack or swc, I'm investigating).
Here's the output I get into vercel build:
./src/pages/_app.page.tsx
Error: failed to process failed to invoke plugin: failed to invoke plugin on 'Some("/home/runner/work/guest-journey/guest-journey/internet-booking-engine/src/pages/_app.page.tsx")'
Caused by:
0: failed to invoke `/home/runner/work/guest-journey/guest-journey/internet-booking-engine/node_modules/@swc/plugin-styled-components/swc_plugin_styled_components.wasm` as js transform plugin at /home/runner/work/guest-journey/guest-journey/internet-booking-engine/node_modules/@swc/plugin-styled-components/swc_plugin_styled_components.wasm
1: RuntimeError: out of bounds memory access
at <unnamed> (<module>[3481]:0x121cad)
at <unnamed> (<module>[3388]:0x116057)
at <unnamed> (<module>[1829]:0xbf0c7)
at <unnamed> (<module>[1841]:0xbfcb6)
at <unnamed> (<module>[1840]:0xbfb85)
at <unnamed> (<module>[1868]:0xc11b3)
at <unnamed> (<module>[1867]:0xc0f85)
at <unnamed> (<module>[333]:0x434e3)
at <unnamed> (<module>[3680]:0x13178d)
2: heap_get_oob
Well, yes users will build their own image when deploying docker image so the image they will build will be mono arch by default (because new image build means new docker manifest from scratch).
@mnapoli you also have the option to use docker manifest create.
An example: https://stackoverflow.com/a/70306574
So the idea would be to keep building separately tagged images (eg php-82-x86
, php-82-arm64
). Then triggering a manifest create
workflow dispatch at the end of any build workflow of a given arch.
The manifest create
workflow should be able to gently fail depending of the builds race condition. But when it is triggered at the time you have all archs images built & tagged, then you're ready to merge then thanks to docker manifest create
command and then push them.
Final note: in fact when you trigger the manifest create github action workflow, best option is to pass docker image couple of unique hashs, not named tags.
Docker automatically pulls the right arch:
Yes but that's what I wanted to avoid, because you'd be working locally with the ARM image and deploying to x86 Lambda.
@mnapoli I'm not agree. It's nice & docker-ish way to have multi arch support for a given image, and under the same tag. Tag names shouldn't be used to specify an arch. In the same time, it's the team decision to choose if depending of the local development/developer laptop arch, you want to force to use a sticky arch or let docker dynamically use x86 or arm64 depending of the arch of this developer laptop. And it works by design into docker.
For example, in docker-compose.yaml
:
version: '3.9'
services:
foo:
platform: linux/amd64
image: bref/php:82
version: '3.9'
services:
foo:
platform: linux/amd64
image: bref/php:82
deps(bref): upgrade (#74)
Signed-off-by: Sébastien HOUZÉ sebastien.houze@gogaille.fr
@thekip experimenting same issue, just updated the plugin.
deps(bref): upgrade (#73)
Signed-off-by: Sébastien HOUZÉ sebastien.houze@gogaille.fr
Signed-off-by: Sébastien HOUZÉ sebastien.houze@gogaille.fr
Signed-off-by: Sébastien HOUZÉ sebastien.houze@gogaille.fr
rollback hcl2jon upgrade
Signed-off-by: Sébastien HOUZÉ sebastien.houze@gogaille.fr
@mnapoli I can confirm, previous PR wasn't sufficient, will perfectly work as expected with this patch.