Skip to content
This repository has been archived by the owner on May 11, 2021. It is now read-only.

Update node.js default ubi image #64

Merged
merged 2 commits into from
Jan 14, 2021
Merged

Conversation

aalykiot
Copy link

@aalykiot aalykiot commented Dec 7, 2020

Recently the Red Hat Software Collections released the node.js-14 UBI image (since this is an LTS version, should be fine to use it as the default image on devfiles).

Since we don't know how you guys bump devfiles versions we left that unchanged (v1.0.0). If I also have to bump the version in this PR please let me know.

@BethGriggs
Copy link

I'm guessing this may need to wait until redhat-developer/odo#4303 is resolved?

@BethGriggs
Copy link

Would someone with permissions be able to rerun CI, please? As discussed elsewhere, the test failures do not appear to be from the Node.js DevFile

@elsony
Copy link

elsony commented Dec 14, 2020

LGTM

I rerun the test and it is passing now. The version number increment is up to the stack. In general, we recommend SemVer.

I'm guessing this may need to wait until openshift/odo#4303 is resolved?

I haven't merged this one yet based on this comment.

@@ -12,7 +12,7 @@ starterProjects:
components:
- name: runtime
container:
image: registry.access.redhat.com/ubi8/nodejs-12:1-45
image: registry.access.redhat.com/ubi8/nodejs-14:latest

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@elsony, are there any rules around container versions for stacks - is it advised that we opt for a fixed version or is it okay to pull from a latest tag?

Copy link

@elsony elsony Dec 14, 2020

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's entirely up to the stack. When you are deciding whether you want to pull in a static version vs latest, you may want to consider the update strategy of your stack. If you are pulling in the latest, the benefit is any non-breaking changes that was introduced to the image will be automatically picked up by the user who has created the stack before. On the other hand, in case breaking changes are introduced to the image (e.g. requires reacting changes to the commands in the devfile to work with it), it may potentially break existing user applications. The existing applications that were created before will refer to the latest image but they don't have the required changes on the commands on their existing devfile.

Another approach that you can consider is to introduce something like a 1.x stable image where you can still update for bug fixes/compatible changes. It will still leave room to allow you to create a 2.x stable image in case you need to introduce breaking changes to the image in the future without breaking existing applications.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would be a +1 for using latest in this case. node 14 is LTS, so there shouldn't be any breaking changes at this point. Also using latest makes it a little easier to deal with any CVE updates.

For future node releases like Node 16, we wouldn't send a PR to update the devfile until it is LTS anyway, so we wouldn't worry about breaking changes.

thoughts?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. I think latest is okay here as we're very unlikely to pull in any changes that will require reacting changes in the DevFile. latest should also make maintenance a little easier for us.

@elsony
Copy link

elsony commented Dec 16, 2020

@dharmit @kadel This PR changes the major version of the nodejs stack. I don't think it will break odo test automation but I just wanted to confirm with you before merging. Can you confirm?

@dharmit
Copy link

dharmit commented Dec 17, 2020

@elsony I think odo CI will be fine with this change because we're mostly storing the devfiles and example repos' source locally on the odo repo to avoid pulling from GitHub numerous times.

I'm guessing this may need to wait until openshift/odo#4303 is resolved?

I haven't merged this one yet based on this comment.

That issue and its related PRs are about adding nodejs-14 as supported image. nodejs-12 is already in list of supported images since we merged redhat-developer/odo#4070.

@BethGriggs
Copy link

That issue and its related PRs are about adding nodejs-14 as supported image. nodejs-12 is already in list of supported images since we merged redhat-developer/odo#4070.

I'm a little confused by this comment, as this PR is updating the DevFile to default to nodejs-14.

@dharmit
Copy link

dharmit commented Dec 21, 2020

I'm a little confused by this comment, as this PR is updating the DevFile to default to nodejs-14.

Ah, my bad. I'm not sure why my brain read it as 12:latest instead of 14-latest. 🤦‍♂️

@kadel
Copy link
Collaborator

kadel commented Jan 14, 2021

That issue and its related PRs are about adding nodejs-14 as supported image. nodejs-12 is already in list of supported images since we merged openshift/odo#4070.

That PR is completely unrelated to this. redhat-developer/odo#4070 affects only s2i builder images, it has nothing to do with Devfiles

@kadel kadel merged commit 6c724a1 into odo-devfiles:master Jan 14, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants