s2i-nodejs-container icon indicating copy to clipboard operation
s2i-nodejs-container copied to clipboard

Add Node.js 18 (c8s and Fedora)

Open hhorak opened this issue 3 years ago • 26 comments

This is a draft so far. Let's see what tests say.

hhorak avatar Jul 13 '22 15:07 hhorak

[test]

hhorak avatar Jul 13 '22 15:07 hhorak

@phracek, did you mention I can turn on the c8s tests somehow?

hhorak avatar Jul 13 '22 18:07 hhorak

[test]

hhorak avatar Jul 14 '22 08:07 hhorak

[test]

hhorak avatar Jul 14 '22 09:07 hhorak

[test]

hhorak avatar Jul 18 '22 14:07 hhorak

@phracek @pkubatrh It seems like all comments resolved, I'll wait for tests again (Fedora fails because of pino app test, that's not caused by this change) and I'm ready to merge. Do you agree or do you want more time for further review?

hhorak avatar Jul 18 '22 14:07 hhorak

For the removal of rhel7 versions - I am all for it, but maybe we could edit the initial move/copy dance for adding the new version that would keep the rhel7 Dockerfiles in previous version? If we delete it only after the move, we do lose all the history for easy blame.

pkubatrh avatar Jul 19 '22 06:07 pkubatrh

Otherwise lgtm

pkubatrh avatar Jul 19 '22 06:07 pkubatrh

@phracek, did you mention I can turn on the c8s tests somehow?

For turn on c8s you have to add similar section like this https://github.com/sclorg/s2i-nodejs-container/blob/master/.github/workflows/container-tests.yml#L54

Instead of c9s will be c8s and instead of CentOS-Stream-9 will be CentOS-Stream-8. Similar like here: https://github.com/sclorg/postgresql-container/blob/master/.github/workflows/container-tests.yml#L61

phracek avatar Jul 19 '22 07:07 phracek

Pino tests are going to be fixed soon by PR. https://github.com/sclorg/s2i-nodejs-container/pull/342

phracek avatar Jul 19 '22 07:07 phracek

CentOS Steam 8 test support is done by https://github.com/sclorg/s2i-nodejs-container/pull/346

phracek avatar Jul 19 '22 07:07 phracek

[test-all]

phracek avatar Jul 19 '22 07:07 phracek

CentOS Stream 8 failed for the reason, that module does not exist yet. Is there .devel-repo.rhel8 missing?

CentOS Stream 8 - AppStream                      34 MB/s |  23 MB     00:00    
CentOS Stream 8 - BaseOS                         46 MB/s |  23 MB     00:00    
CentOS Stream 8 - Extras                         73 kB/s |  18 kB     00:00    
CentOS Stream 8 - Extras common packages         14 kB/s | 4.6 kB     00:00    
Error: Problems in request:
missing groups or modules: nodejs:18
Error: error building at STEP "RUN yum -y module enable nodejs:$NODEJS_VERSION &&     MODULE_DEPS="make gcc gcc-c++ libatomic_ops git openssl-devel" &&     INSTALL_PKGS="$MODULE_DEPS nodejs npm nodejs-nodemon nss_wrapper" &&     ln -s /usr/lib/node_modules/nodemon/bin/nodemon.js /usr/bin/nodemon &&     ln -s /usr/libexec/platform-python /usr/bin/python3 &&     yum install -y --setopt=tsflags=nodocs $INSTALL_PKGS &&     rpm -V $INSTALL_PKGS &&     yum -y clean all --enablerepo='*'": error while running runtime: exit status 1
make[1]: Leaving directory '/tmp/sclorg/s2i-nodejs-container'
make[1]: *** [common/common.mk:95: 18] Error 1
make: *** [common/common.mk:84: build-serial] Error 2

phracek avatar Jul 19 '22 07:07 phracek

CentOS Stream 9 tests are failing for pino reason:

07:55:12                 out:  [PASSED] for 'hw' test_build_express_webapp
07:55:12                 out:  [PASSED] for 'clients' express
07:55:12                 out:  [FAILED] for 'clients' pino
07:55:12                 out:  [PASSED] for 'clients' prom-client
07:55:12                 out:  [PASSED] for 'clients' opossum

phracek avatar Jul 19 '22 07:07 phracek

CentOS Stream 8 failed for the reason, that module does not exist yet.

More likely the module is not built for c8s yet.

pkubatrh avatar Jul 19 '22 08:07 pkubatrh

More likely the module is not built for c8s yet.

It is, it works on my laptop :)

hhorak avatar Jul 19 '22 10:07 hhorak

It is, it works on my laptop :)

It works also on 1minitetip -- is it possible the Testing farm uses some mirrors where nodejs:18 is not available?

hhorak avatar Jul 20 '22 07:07 hhorak

It should be using whatever is available inside the base image and the repositories. Maybe the tests were just run before the package got into the mirrors? Let's try again [test-all]

pkubatrh avatar Jul 20 '22 07:07 pkubatrh

[test]

hhorak avatar Jul 20 '22 09:07 hhorak

[test]

hhorak avatar Jul 20 '22 10:07 hhorak

C8S quay.io repository is https://quay.io/repository/sclorg/nodejs-18-c8s C9S quay.io repository is https://quay.io/repository/sclorg/nodejs-18-c9s

I added c8s only so far, we still wait for nodejs:18 to appear in c9s repository (not available now, but should be soon).

hhorak avatar Jul 20 '22 10:07 hhorak

[test]

hhorak avatar Jul 20 '22 10:07 hhorak

[test]

hhorak avatar Jul 22 '22 10:07 hhorak

[test]

hhorak avatar Jul 22 '22 10:07 hhorak

[test]

hhorak avatar Aug 11 '22 10:08 hhorak

[test]

hhorak avatar Aug 11 '22 16:08 hhorak

Thanks, I'll merge now, as rebasing this is quite complicated.

hhorak avatar Aug 15 '22 09:08 hhorak