Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add new java-node-combined image based on official openjdk-21 image #9

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/post-merge.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ jobs:
strategy:
fail-fast: false
matrix:
image: ['cekit-builder', 'devspaces-base', 'devspaces-openjdk-17', 'devspaces-nodejs-18']
image: ['cekit-builder', 'devspaces-base', 'devspaces-openjdk-17', 'devspaces-nodejs-18', 'devspaces-java-node-combined']
uses: ./.github/workflows/cekit-build.yaml
with:
tag: quay.io/redhat-cop/${{ matrix.image }}:latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pull-request.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
strategy:
fail-fast: false
matrix:
image: ['cekit-builder', 'devspaces-base', 'devspaces-openjdk-17', 'devspaces-nodejs-18']
image: ['cekit-builder', 'devspaces-base', 'devspaces-openjdk-17', 'devspaces-nodejs-18', 'devspaces-java-node-combined']
uses: ./.github/workflows/cekit-build.yaml
with:
tag: quay.io/redhat-cop/${{ matrix.image }}:pr-${{ github.sha }}
Expand Down
3 changes: 0 additions & 3 deletions image.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,6 @@ envs:
modules:
repositories:
- path: modules
- git:
url: https://github.com/cgruver/dev-workspace-utilities.git
ref: main
install:
- name: developer-base
- name: custom-tooling
Expand Down
14 changes: 14 additions & 0 deletions images/devspaces-java-node-combined.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
name: devspaces-java-node-combined
from: registry.access.redhat.com/ubi9/openjdk-21:1.18-4
version: &version 1.0
packages:
manager: microdnf
manager_flags: "--disableplugin=subscription-manager --setopt=tsflags=nodocs --setopt=install_weak_deps=0"
envs:
- name: TOOLS_DIR
value: /usr/local/tools
modules:
install:
- name: node20
- name: angular
- name: quarkus
6 changes: 6 additions & 0 deletions modules/angular/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#!/usr/bin/env bash

# PATH=${PATH}:${TOOLS_DIR}/node/bin
echo $PATH
npm install -g @angular/cli
npm install -g serverless
6 changes: 6 additions & 0 deletions modules/angular/module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
schema_version: 1
name: angular
version: latest
description: "Installs the Angular UI Framework"
execute:
- script: install.sh
10 changes: 10 additions & 0 deletions modules/java/java11/module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
schema_version: 1
name: java`1
version: v1.0
description: "Installs JDK 11"
envs:
- name: JAVA_HOME
value: /etc/alternatives/jre_11_openjdk
packages:
install:
- java-11-openjdk-devel
10 changes: 10 additions & 0 deletions modules/java/java17/module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
schema_version: 1
name: java17
version: v1.0
description: "Installs JDK 17"
envs:
- name: JAVA_HOME
value: /etc/alternatives/jre_17_openjdk
packages:
install:
- java-17-openjdk-devel
10 changes: 10 additions & 0 deletions modules/java/java21/module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
schema_version: 1
name: java21
version: v1.0
description: "Installs JDK 21"
envs:
- name: JAVA_HOME
value: /etc/alternatives/jre_21_openjdk
packages:
install:
- java-21-openjdk-devel
9 changes: 9 additions & 0 deletions modules/maven/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/usr/bin/env bash

TEMP_DIR="$(mktemp -d)"
mkdir -p /usr/local/maven /usr/local/maven/ref
curl -fsSL -o ${TEMP_DIR}/apache-maven.tar.gz https://apache.osuosl.org/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz
tar -xzf ${TEMP_DIR}/apache-maven.tar.gz -C /usr/local/maven --strip-components=1
rm -rf "${TEMP_DIR}"
cd /usr/local/bin
ln -s ../maven/bin/mvn mvn
9 changes: 9 additions & 0 deletions modules/maven/module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
schema_version: 1
name: maven
version: v1.0
description: "Installs Apache Maven"
args:
- name: MAVEN_VERSION
value: 3.9.6
execute:
- script: install.sh
7 changes: 7 additions & 0 deletions modules/nodejs/node18/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/usr/bin/env bash

TEMP_DIR="$(mktemp -d)"
curl -fsSL -o ${TEMP_DIR}/node.tz https://nodejs.org/dist/${NODE_VERSION}/node-${NODE_VERSION}-linux-x64.tar.xz
tar -x --no-auto-compress -f ${TEMP_DIR}/node.tz -C ${TEMP_DIR}
mv ${TEMP_DIR}/node-${NODE_VERSION}-linux-x64 /usr/local/node
rm -rf "${TEMP_DIR}"
12 changes: 12 additions & 0 deletions modules/nodejs/node18/module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
schema_version: 1
name: node18
version: v1.0
description: "Installs NodeJS v18"
args:
- name: NODE_VERSION
value: v18.19.0
envs:
- name: PATH
value: ${PATH}:/usr/local/node/bin
execute:
- script: install.sh
7 changes: 7 additions & 0 deletions modules/nodejs/node20/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
#!/usr/bin/env bash

TEMP_DIR="$(mktemp -d)"
curl -fsSL -o ${TEMP_DIR}/node.tz https://nodejs.org/dist/${NODE_VERSION}/node-${NODE_VERSION}-linux-x64.tar.xz
tar -x --no-auto-compress -f ${TEMP_DIR}/node.tz -C ${TEMP_DIR}
mv ${TEMP_DIR}/node-${NODE_VERSION}-linux-x64 /usr/local/node
rm -rf "${TEMP_DIR}"
15 changes: 15 additions & 0 deletions modules/nodejs/node20/module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
schema_version: 1
name: node20
version: v1.0
description: "Installs NodeJS v20"
args:
- name: NODE_VERSION
value: v20.11.0
envs:
- name: PATH
value: ${PATH}:/usr/local/node/bin
packages:
install:
- xz
execute:
- script: install.sh
16 changes: 16 additions & 0 deletions modules/quarkus/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
#!/usr/bin/env bash

TEMP_DIR="$(mktemp -d)"
mkdir -p /usr/local/quarkus-cli/lib
mkdir /usr/local/quarkus-cli/bin
curl -fsSL -o ${TEMP_DIR}/quarkus-cli.tgz https://github.com/quarkusio/quarkus/releases/download/${QUARKUS_VERSION}/quarkus-cli-${QUARKUS_VERSION}.tar.gz
tar -xzf ${TEMP_DIR}/quarkus-cli.tgz -C ${TEMP_DIR}
cp ${TEMP_DIR}/quarkus-cli-${QUARKUS_VERSION}/bin/quarkus /usr/local/quarkus-cli/bin
cp ${TEMP_DIR}/quarkus-cli-${QUARKUS_VERSION}/lib/quarkus-cli-${QUARKUS_VERSION}-runner.jar /usr/local/quarkus-cli/lib
chmod +x /usr/local/quarkus-cli/bin/quarkus
rm -rf "${TEMP_DIR}"
cd /usr/local/bin
ln -s ../quarkus-cli/bin/quarkus quarkus
mkdir -p ${JBANG_DIR}
curl -Ls https://sh.jbang.dev | bash -s - app setup
ln -s ${JBANG_DIR}/bin/jbang /usr/local/bin/jbang
12 changes: 12 additions & 0 deletions modules/quarkus/module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
schema_version: 1
name: quarkus
version: v1.0
description: "Installs the Quarkus CLI"
args:
- name: QUARKUS_VERSION
value: 3.6.6
envs:
- name: JBANG_DIR
value: "/usr/local/jbang"
execute:
- script: install.sh
9 changes: 9 additions & 0 deletions modules/yq/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/usr/bin/env bash

TEMP_DIR="$(mktemp -d)"
YQ_VER=$(basename $(curl -Ls -o /dev/null -w %{url_effective} https://github.com/mikefarah/yq/releases/latest))
curl -fsSL -o ${TEMP_DIR}/yq.tar.gz https://github.com/mikefarah/yq/releases/download/${YQ_VER}/yq_linux_amd64.tar.gz
tar -xzf ${TEMP_DIR}/yq.tar.gz -C ${TEMP_DIR}
cp ${TEMP_DIR}/yq_linux_amd64 /usr/local/bin/yq
chmod +x /usr/local/bin/yq
rm -rf "${TEMP_DIR}"
6 changes: 6 additions & 0 deletions modules/yq/module.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
schema_version: 1
name: yq
version: v1.0
description: "Installs the YQ CLI"
execute:
- script: install.sh
Loading