Skip to content

Conversation

@LaurentGoderre
Copy link
Member

@LaurentGoderre LaurentGoderre commented May 10, 2018

Implements #473

TODO:

  • Fix the stackbrew script to add the alpine tag

@LaurentGoderre LaurentGoderre changed the title Added multiple versions of alpine linux WIP: Added multiple versions of alpine linux May 10, 2018
@LaurentGoderre LaurentGoderre force-pushed the multiple-alpine branch 3 times, most recently from 5062729 to 505ffde Compare May 10, 2018 19:55
@LaurentGoderre LaurentGoderre requested review from PeterDaveHello, SimenB and chorrell and removed request for PeterDaveHello and SimenB May 11, 2018 13:59
@LaurentGoderre LaurentGoderre force-pushed the multiple-alpine branch 2 times, most recently from 906baba to b773635 Compare May 11, 2018 15:50
@SimenB
Copy link
Member

SimenB commented May 12, 2018

I'm excited :D

@PeterDaveHello PeterDaveHello removed their request for review May 13, 2018 07:53
PeterDaveHello

This comment was marked as off-topic.

@SimenB
Copy link
Member

SimenB commented May 13, 2018

I'm a bit worried about the build time, and how it would affect our ability to get security releases out in time

@LaurentGoderre
Copy link
Member Author

Yeah hopefully we can get the alpine cache merged before this one.

@SimenB
Copy link
Member

SimenB commented May 13, 2018

That won't help the build for docker hub. They might build in parallel though, so no big impact

@LaurentGoderre
Copy link
Member Author

It would be nice if anyone could access the Travis cache so that even the hub could use it.

@SimenB
Copy link
Member

SimenB commented May 13, 2018

Ref nodejs/security-wg#168 (comment)

the ccache stuff being worked on in #703 is great for Travis speedups, but really can't help the speed of our process/builds at all

I think the real solution for our speed woes is to get a prebuilt binary.

@chorrell
Copy link
Contributor

Yeah, I agree. Is there anyone on the build group who can help push that forward?

@LaurentGoderre
Copy link
Member Author

From what I have read, they aren't too keen on this because of the static typing which would mean they would need to track Alpine security updates.

@SimenB
Copy link
Member

SimenB commented May 14, 2018

I think this is the most current issue: nodejs/build#1140

@LaurentGoderre LaurentGoderre force-pushed the multiple-alpine branch 2 times, most recently from 3030a2e to 24f06a6 Compare May 15, 2018 17:55
@LaurentGoderre
Copy link
Member Author

Stackbrew generates:

# this file is generated via https://github.com/nodejs/docker-node/blob/24f06a629ba09ce68d2b299057fbf922caf4fd11/generate-stackbrew-library.sh

Maintainers: The Node.js Docker Team <https://github.com/nodejs/docker-node> (@nodejs)
GitRepo: https://github.com/nodejs/docker-node.git

Tags: 9.11.1, 9.11, 9
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 9

Tags: 9.11.1-alpine3.6, 9.11-alpine3.6, 9-alpine3.6
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v6, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 9/alpine3.6

Tags: 9.11.1-alpine3.7, 9.11-alpine3.7, 9-alpine3.7, 9.11.1-alpine, 9.11-alpine, 9-alpine
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v6, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 9/alpine3.7

Tags: 9.11.1-onbuild, 9.11-onbuild, 9-onbuild
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 9023f588717d236a92d91a8483ff0582484c22d1
Directory: 9/onbuild

Tags: 9.11.1-slim, 9.11-slim, 9-slim
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 9023f588717d236a92d91a8483ff0582484c22d1
Directory: 9/slim

Tags: 9.11.1-stretch, 9.11-stretch, 9-stretch
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 9023f588717d236a92d91a8483ff0582484c22d1
Directory: 9/stretch

Tags: 8.11.1, 8.11, 8, carbon
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 8

Tags: 8.11.1-alpine3.6, 8.11-alpine3.6, 8-alpine3.6, carbon-alpine3.6
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v6, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 8/alpine3.6

Tags: 8.11.1-alpine3.7, 8.11-alpine3.7, 8-alpine3.7, carbon-alpine3.7, 8.11.1-alpine, 8.11-alpine, 8-alpine, carbon-alpine
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v6, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 8/alpine3.7

Tags: 8.11.1-onbuild, 8.11-onbuild, 8-onbuild, carbon-onbuild
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: b3ca6573b5c179148b446107386ae96ac6204ad3
Directory: 8/onbuild

Tags: 8.11.1-slim, 8.11-slim, 8-slim, carbon-slim
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: b3ca6573b5c179148b446107386ae96ac6204ad3
Directory: 8/slim

Tags: 8.11.1-stretch, 8.11-stretch, 8-stretch, carbon-stretch
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: b3ca6573b5c179148b446107386ae96ac6204ad3
Directory: 8/stretch

Tags: 6.14.2, 6.14, 6, boron
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 6

Tags: 6.14.2-alpine3.7, 6.14-alpine3.7, 6-alpine3.7, boron-alpine3.7, 6.14.2-alpine, 6.14-alpine, 6-alpine, boron-alpine
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 6/alpine3.7

Tags: 6.14.2-onbuild, 6.14-onbuild, 6-onbuild, boron-onbuild
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: bb49c321f761c333ba87b18770121651f0a3004c
Directory: 6/onbuild

Tags: 6.14.2-slim, 6.14-slim, 6-slim, boron-slim
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: bb49c321f761c333ba87b18770121651f0a3004c
Directory: 6/slim

Tags: 6.14.2-stretch, 6.14-stretch, 6-stretch, boron-stretch
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: bb49c321f761c333ba87b18770121651f0a3004c
Directory: 6/stretch

Tags: 10.1.0, 10.1, 10, latest
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 10

Tags: 10.1.0-alpine3.6, 10.1-alpine3.6, 10-alpine3.6, alpine3.6
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v6, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 10/alpine3.6

Tags: 10.1.0-alpine3.7, 10.1-alpine3.7, 10-alpine3.7, alpine3.7, 10.1.0-alpine, 10.1-alpine, 10-alpine, alpine
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v6, i386
GitCommit: 24f06a629ba09ce68d2b299057fbf922caf4fd11
Directory: 10/alpine3.7

Tags: 10.1.0-slim, 10.1-slim, 10-slim, slim
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 2ecc9e8579f519ae3d267b5b497b8c04d6c7040d
Directory: 10/slim

Tags: 10.1.0-stretch, 10.1-stretch, 10-stretch, stretch
Architectures: amd64, ppc64le, s390x, arm64v8, arm32v7, i386
GitCommit: 2ecc9e8579f519ae3d267b5b497b8c04d6c7040d
Directory: 10/stretch

Tags: chakracore-8.11.1, chakracore-8.11, chakracore-8
Architectures: amd64
GitCommit: eca9e8f34ca78bdba691e1d5ead82840e2673705
Directory: chakracore/8

Tags: chakracore-10.0.0, chakracore-10.0, chakracore-10, chakracore
Architectures: amd64
GitCommit: f713f15abe3ff05635326ba9716b7755c9d5f1aa
Directory: chakracore/10

@LaurentGoderre LaurentGoderre changed the title WIP: Added multiple versions of alpine linux Added multiple versions of alpine linux May 15, 2018
@chorrell
Copy link
Contributor

Following up on @LaurentGoderre's last comment:

they aren't too keen on this because of the static typing which would mean they would need to track Alpine security updates.

To me this means Alpine isn't something they are willing to support. If it's not a supported platform, maybe we shouldn't be encouraging people to use it by offering multiple versions?

I don't know, I'm beginning to think this is not the best use of our time and maybe we just need to revisit upgrading the Alpine images to the latest supported version (3.7)

@LaurentGoderre
Copy link
Member Author

This allows us to upgrade alpine versions in a less disruptive way. For example, when 3.8 comes out, we could support v3.6 for two versions, keep the default on 3.7 for two versions and then drop 3.6 and move the default to 3.8.

@chorrell
Copy link
Contributor

Yes it would be less disruptive, but I just don't think it's that important. Based on the issues and PRs people have submitted, they seem to care more about Alpine being out of date than being able to pin to given Alpine release. I think we should just treat Alpine updates the same way we do Yarn updates and move on.

I think a stronger argument can be made taking this approach with Debian and possibly ubuntu (especially given how small Bionic is now) and we wouldn't have to worry about absurd build times.

@LaurentGoderre
Copy link
Member Author

Alright!

@LaurentGoderre
Copy link
Member Author

@chorrell does that mean that next version of Node 6 should move to Alpine 3.7?

@chorrell
Copy link
Contributor

Yep

@LaurentGoderre
Copy link
Member Author

Maybe we can salvage part of this too make it easier?

@chorrell
Copy link
Contributor

Yeah, that would be good.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants