Skip to content
Merged
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
5 changes: 3 additions & 2 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright 2019, 2022 Oracle Corporation and/or its affiliates. All rights reserved.
# Copyright 2019, 2022, Oracle Corporation and/or its affiliates. All rights reserved.
# Licensed under the Universal Permissive License v 1.0 as shown at
# http://oss.oracle.com/licenses/upl.

Expand Down Expand Up @@ -95,7 +95,8 @@ jobs:
kubectl version
kubectl get nodes
docker pull gcr.io/distroless/java
docker pull gcr.io/distroless/java:11
docker pull gcr.io/distroless/java11
docker pull gcr.io/distroless/java17

- name: Code Review
shell: bash
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/coherence-matrix.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -127,7 +127,8 @@ jobs:
docker login container-registry.oracle.com -u "${{ secrets.OCR_DOCKER_USERNAME }}" -p "${{ secrets.OCR_DOCKER_PASSWORD }}"
docker login "${{ secrets.OCI_REGISTRY }}" -u "${{ secrets.OCI_USERNAME }}" -p "${{ secrets.OCI_PASSWORD }}"
docker pull gcr.io/distroless/java
docker pull gcr.io/distroless/java:11
docker pull gcr.io/distroless/java11
docker pull gcr.io/distroless/java17
docker pull ${{ matrix.coherence-image }}

- name: Coherence Certification Tests
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/compatibility-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,8 @@ jobs:
kubectl version
kubectl get nodes
docker pull gcr.io/distroless/java
docker pull gcr.io/distroless/java:11
docker pull gcr.io/distroless/java11
docker pull gcr.io/distroless/java17
- name: Build
shell: bash
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/istio-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -102,7 +102,8 @@ jobs:
kubectl version
kubectl get nodes
docker pull gcr.io/distroless/java
docker pull gcr.io/distroless/java:11
docker pull gcr.io/distroless/java11
docker pull gcr.io/distroless/java17

- name: Build
shell: bash
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/k8s-matrix.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -108,7 +108,8 @@ jobs:
kubectl version
kubectl get nodes
docker pull gcr.io/distroless/java
docker pull gcr.io/distroless/java:11
docker pull gcr.io/distroless/java11
docker pull gcr.io/distroless/java17

- name: Certification Tests
shell: bash
Expand Down
5 changes: 3 additions & 2 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (c) 2020, 2021, Oracle and/or its affiliates.
# Copyright (c) 2020, 2022, Oracle and/or its affiliates.
# Licensed under the Universal Permissive License v 1.0 as shown at
# http://oss.oracle.com/licenses/upl.

Expand Down Expand Up @@ -52,7 +52,8 @@ jobs:
kubectl version
kubectl get nodes
docker pull gcr.io/distroless/java
docker pull gcr.io/distroless/java:11
docker pull gcr.io/distroless/java11
docker pull gcr.io/distroless/java17

- name: Release
shell: bash
Expand Down
61 changes: 49 additions & 12 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -29,11 +29,14 @@ COMPATIBLE_VERSION = 3.2.4
# The selector to use to find Operator Pods of the COMPATIBLE_VERSION (do not put in double quotes!!)
COMPATIBLE_SELECTOR = control-plane=coherence

# The GitHub project URL
PROJECT_URL = https://github.com/oracle/coherence-operator

# ----------------------------------------------------------------------------------------------------------------------
# The Coherence image to use for deployments that do not specify an image
# ----------------------------------------------------------------------------------------------------------------------
COHERENCE_VERSION ?= 21.12
COHERENCE_IMAGE ?= ghcr.io/oracle/coherence-ce:21.12
COHERENCE_VERSION ?= 21.12.1
COHERENCE_IMAGE ?= ghcr.io/oracle/coherence-ce:21.12.1
# This is the Coherence image that will be used in tests.
# Changing this variable will allow test builds to be run against different Coherence versions
# without altering the default image name.
Expand Down Expand Up @@ -76,19 +79,20 @@ OPERATOR_IMAGE := $(OPERATOR_IMAGE_REPO):$(VERSION)
OPERATOR_IMAGE_DELVE := $(OPERATOR_IMAGE_REPO):delve
OPERATOR_IMAGE_DEBUG := $(OPERATOR_IMAGE_REPO):debug
UTILS_IMAGE ?= $(OPERATOR_IMAGE_REPO):$(VERSION)-utils
TEST_BASE_IMAGE ?= $(OPERATOR_IMAGE_REPO)-test-base:$(VERSION)
# The Operator images to push
OPERATOR_RELEASE_REPO ?= $(OPERATOR_IMAGE_REPO)
OPERATOR_RELEASE_IMAGE := $(OPERATOR_RELEASE_REPO):$(VERSION)
UTILS_RELEASE_IMAGE := $(OPERATOR_RELEASE_REPO):$(VERSION)-utils
BUNDLE_RELEASE_IMAGE := $(OPERATOR_RELEASE_REPO):$(VERSION)-bundle
OPERATOR_RELEASE_REPO ?= $(OPERATOR_IMAGE_REPO)
OPERATOR_RELEASE_IMAGE := $(OPERATOR_RELEASE_REPO):$(VERSION)
UTILS_RELEASE_IMAGE := $(OPERATOR_RELEASE_REPO):$(VERSION)-utils
TEST_BASE_RELEASE_IMAGE := $(OPERATOR_RELEASE_REPO)-test-base:$(VERSION)
BUNDLE_RELEASE_IMAGE := $(OPERATOR_RELEASE_REPO):$(VERSION)-bundle

GPG_PASSPHRASE :=

# ----------------------------------------------------------------------------------------------------------------------
# The test application images used in integration tests
# ----------------------------------------------------------------------------------------------------------------------
TEST_APPLICATION_IMAGE := $(RELEASE_IMAGE_PREFIX)operator-test:1.0.0
TEST_APPLICATION_IMAGE_WITH_UTILS := $(RELEASE_IMAGE_PREFIX)operator-test-with-utils:1.0.0
TEST_COMPATIBILITY_IMAGE := $(RELEASE_IMAGE_PREFIX)operator-test-compatibility:1.0.0
TEST_APPLICATION_IMAGE_CLIENT := $(RELEASE_IMAGE_PREFIX)operator-test-client:1.0.0
TEST_APPLICATION_IMAGE_HELIDON := $(RELEASE_IMAGE_PREFIX)operator-test-helidon:1.0.0
Expand Down Expand Up @@ -404,11 +408,27 @@ build-utils: build-mvn $(BUILD_BIN)/runner ## Build the Coherence Operator util
docker build --no-cache --build-arg target=arm64 -t $(UTILS_IMAGE)-arm64 java/coherence-operator/target/docker
docker tag $(UTILS_IMAGE)-$(IMAGE_ARCH) $(UTILS_IMAGE)

# ----------------------------------------------------------------------------------------------------------------------
# Build the Operator base test image
# ----------------------------------------------------------------------------------------------------------------------
.PHONY: build-test-base
build-test-base: export ARTIFACT_DIR := $(CURRDIR)/java/coherence-operator
build-test-base: export VERSION := $(VERSION)
build-test-base: export IMAGE_NAME := $(TEST_BASE_IMAGE)
build-test-base: export AMD_BASE_IMAGE := gcr.io/distroless/java11
build-test-base: export ARM_BASE_IMAGE := gcr.io/distroless/java11
build-test-base: export PROJECT_URL := $(PROJECT_URL)
build-test-base: export PROJECT_VENDOR := Oracle
build-test-base: export PROJECT_DESCRIPTION := Oracle Coherence bease test image
build-test-base: build-mvn $(BUILD_BIN)/runner ## Build the Coherence test base image
cp -R $(BUILD_BIN)/linux java/coherence-operator/target/docker
$(CURRDIR)/java/coherence-operator/run-buildah.sh BUILD

# ----------------------------------------------------------------------------------------------------------------------
# Build the Operator images without the test images
# ----------------------------------------------------------------------------------------------------------------------
.PHONY: build-operator-images
build-operator-images: $(BUILD_TARGETS)/build-operator build-utils ## Build all operator images
build-operator-images: $(BUILD_TARGETS)/build-operator build-utils build-test-base ## Build all operator images

# ----------------------------------------------------------------------------------------------------------------------
# Build the Operator Test images
Expand All @@ -430,7 +450,6 @@ build-test-images: build-mvn build-client-image build-basic-test-image ## Build
.PHONY: build-basic-test-image
build-basic-test-image: build-mvn ## Build the basic Operator test image
./mvnw -B -f java/operator-test package jib:dockerBuild -DskipTests -Djib.to.image=$(TEST_APPLICATION_IMAGE) $(MAVEN_BUILD_OPTS)
./mvnw -B -f java/operator-test-with-utils package jib:dockerBuild -am -nsu -DskipTests -Djib.to.image=$(TEST_APPLICATION_IMAGE_WITH_UTILS) $(MAVEN_BUILD_OPTS)

.PHONY: build-client-image
build-client-image: ## Build the test client image
Expand All @@ -440,7 +459,7 @@ build-client-image: ## Build the test client image
# Build all of the Docker images
# ----------------------------------------------------------------------------------------------------------------------
.PHONY: build-all-images
build-all-images: $(BUILD_TARGETS)/build-operator build-utils build-test-images ## Build all images (including tests)
build-all-images: $(BUILD_TARGETS)/build-operator build-utils build-test-base build-test-images ## Build all images (including tests)

# ----------------------------------------------------------------------------------------------------------------------
# Build the operator linux binary
Expand Down Expand Up @@ -1568,6 +1587,24 @@ else
docker manifest push $(UTILS_RELEASE_IMAGE)
endif

# ----------------------------------------------------------------------------------------------------------------------
# Push the test base images
# ----------------------------------------------------------------------------------------------------------------------
.PHONY: push-test-base-images
push-test-base-images:
ifeq ($(TEST_BASE_RELEASE_IMAGE), $(TEST_BASE_IMAGE))
@echo "Pushing $(TEST_BASE_IMAGE)"
./mvnw -B -f java/coherence-operator package -P push-test-base-image -pl coherence-operator \
-DskipTests -Dimage.name=$(TEST_BASE_IMAGE)
else
@echo "Tagging $(TEST_BASE_IMAGE)-amd64 as $(TEST_BASE_RELEASE_IMAGE)-amd64"
docker tag $(TEST_BASE_IMAGE)-amd64 $(TEST_BASE_RELEASE_IMAGE)-amd64
@echo "Tagging $(TEST_BASE_IMAGE)-arm64 as $(TEST_BASE_RELEASE_IMAGE)-arm64"
docker tag $(TEST_BASE_IMAGE)-arm64 $(TEST_BASE_RELEASE_IMAGE)-arm64
./mvnw -B -f java/coherence-operator package -P push-test-base-image -pl coherence-operator \
-DskipTests -Dimage.name=$(TEST_BASE_RELEASE_IMAGE)
endif

# ----------------------------------------------------------------------------------------------------------------------
# Push the Operator JIB Test Docker images
# ----------------------------------------------------------------------------------------------------------------------
Expand Down Expand Up @@ -1603,13 +1640,13 @@ push-compatibility-image:
# Push all of the Docker images
# ----------------------------------------------------------------------------------------------------------------------
.PHONY: push-all-images
push-all-images: push-test-images push-utils-image push-operator-image
push-all-images: push-test-images push-test-base-images push-utils-image push-operator-image

# ----------------------------------------------------------------------------------------------------------------------
# Push all of the Docker images that are released
# ----------------------------------------------------------------------------------------------------------------------
.PHONY: push-release-images
push-release-images: push-utils-image push-operator-image
push-release-images: push-test-base-images push-utils-image push-operator-image

# ----------------------------------------------------------------------------------------------------------------------
# Install Prometheus
Expand Down
2 changes: 1 addition & 1 deletion docs/about/04_coherence_spec.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
///////////////////////////////////////////////////////////////////////////////

Copyright (c) 2020, 2021, Oracle and/or its affiliates.
Copyright (c) 2020, 2022, Oracle and/or its affiliates.
Licensed under the Universal Permissive License v 1.0 as shown at
http://oss.oracle.com/licenses/upl.

Expand Down
6 changes: 3 additions & 3 deletions docs/management/100_tmb_test.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
///////////////////////////////////////////////////////////////////////////////

Copyright (c) 2020, Oracle and/or its affiliates.
Copyright (c) 2020, 2022, Oracle and/or its affiliates.
Licensed under the Universal Permissive License v 1.0 as shown at
http://oss.oracle.com/licenses/upl.

Expand Down Expand Up @@ -54,7 +54,7 @@ spec:
restartPolicy: Never
containers:
- name: coherence
image: ghcr.io/oracle/coherence-ce:21.06.2 # <1>
image: ghcr.io/oracle/coherence-ce:21.12.1 # <1>
ports:
- name: mbus
containerPort: 8000
Expand Down Expand Up @@ -101,7 +101,7 @@ spec:
restartPolicy: Never
containers:
- name: coherence
image: ghcr.io/oracle/coherence-ce:21.06.2
image: ghcr.io/oracle/coherence-ce:21.12.1
command:
- java # <1>
- -cp
Expand Down
4 changes: 2 additions & 2 deletions docs/metrics/020_metrics.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
///////////////////////////////////////////////////////////////////////////////

Copyright (c) 2020, 2021, Oracle and/or its affiliates.
Copyright (c) 2020, 2022, Oracle and/or its affiliates.
Licensed under the Universal Permissive License v 1.0 as shown at
http://oss.oracle.com/licenses/upl.

Expand All @@ -15,7 +15,7 @@ This would typically be used to expose metrics to something like Prometheus.

NOTE: The default metrics endpoint is *disabled* by default in Coherence clusters but can be enabled and configured by
setting the relevant fields in the `Coherence` CRD.
If your Coherence version is before CE 21.06.2 this example assumes that your application has included the
If your Coherence version is before CE 21.12.1 this example assumes that your application has included the
`coherence-metrics` module as a dependency.
See the Coherence product documentation for more details on enabling metrics
in your application.
Expand Down
14 changes: 7 additions & 7 deletions examples/015_simple_image/README.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
///////////////////////////////////////////////////////////////////////////////

Copyright (c) 2021, Oracle and/or its affiliates.
Copyright (c) 2021, 2022, Oracle and/or its affiliates.
Licensed under the Universal Permissive License v 1.0 as shown at
http://oss.oracle.com/licenses/upl.

Expand Down Expand Up @@ -52,7 +52,7 @@ In the `build.gradle` file we add the bom as a platform dependency.
.build.gradle
----
dependencies {
implementation platform("com.oracle.coherence.ce:coherence-bom:21.06.2")
implementation platform("com.oracle.coherence.ce:coherence-bom:21.12.1")
----

We can then add the `coherence` and `coherence-management` modules as dependencies
Expand All @@ -77,7 +77,7 @@ In the `build.gradle` file we add the bom as a platform dependency.
.build.gradle
----
dependencies {
implementation platform("com.oracle.coherence.ce:coherence-bom:21.06.2")
implementation platform("com.oracle.coherence.ce:coherence-bom:21.12.1")

implementation "com.oracle.coherence.ce:coherence"
implementation "com.oracle.coherence.ce:coherence-management"
Expand Down Expand Up @@ -136,7 +136,7 @@ In the `pom.xml` file we configure the plugin where it is declared in the `plugi
<version>${version.plugin.jib}</version>
<configuration>
<from>
<image>gcr.io/distroless/java:11</image> <1>
<image>gcr.io/distroless/java11</image> <1>
</from>
<to>
<image>${project.artifactId}</image> <2>
Expand All @@ -152,7 +152,7 @@ In the `pom.xml` file we configure the plugin where it is declared in the `plugi
</configuration>
</plugin>
----
<1> The base image will be `gcr.io/distroless/java:11`
<1> The base image will be `gcr.io/distroless/java11`
<2> The image name is set to the Maven module name using the property `${project.artifactId}`
<3> There will be two tags for the image, `latest` and the project version taken from the `${project.version}` property.
<4> The main class to use when the image is run is set to `com.tangosol.net.Coherence`
Expand All @@ -166,7 +166,7 @@ In the `build.gradle` file we configure JIB in the `jib` section:
----
jib {
from {
image = 'gcr.io/distroless/java:11' // <1>
image = 'gcr.io/distroless/java11' // <1>
}
to {
image = "${project.name}" // <2>
Expand All @@ -178,7 +178,7 @@ jib {
}
}
----
<1> The base image will be `gcr.io/distroless/java:11`
<1> The base image will be `gcr.io/distroless/java11`
<2> The image name is set to the Maven module name using the property `${project.artifactId}`
<3> There will be two tags for the image, `latest` and the project version taken from the `${project.version}` property.
<4> The main class to use when the image is run is set to `com.tangosol.net.Coherence`
Expand Down
6 changes: 3 additions & 3 deletions examples/015_simple_image/build.gradle
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* Copyright (c) 2021, Oracle and/or its affiliates.
* Copyright (c) 2021, 2022, Oracle and/or its affiliates.
* Licensed under the Universal Permissive License v 1.0 as shown at
* http://oss.oracle.com/licenses/upl.
*/
Expand All @@ -19,15 +19,15 @@ repositories {
}

dependencies {
implementation platform("com.oracle.coherence.ce:coherence-bom:21.06.2")
implementation platform("com.oracle.coherence.ce:coherence-bom:21.12.1")

implementation "com.oracle.coherence.ce:coherence"
implementation "com.oracle.coherence.ce:coherence-management"
}

jib {
from {
image = 'gcr.io/distroless/java:11'
image = 'gcr.io/distroless/java11'
}
to {
image = "${project.name}"
Expand Down
6 changes: 3 additions & 3 deletions examples/015_simple_image/pom.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>

<!--
~ Copyright (c) 2021, Oracle and/or its affiliates.
~ Copyright (c) 2021, 2022, Oracle and/or its affiliates.
~ Licensed under the Universal Permissive License v 1.0 as shown at
~ http://oss.oracle.com/licenses/upl.
-->
Expand All @@ -24,7 +24,7 @@
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>

<coherence.version>21.06.2</coherence.version>
<coherence.version>21.12.1</coherence.version>

<version.plugin.jib>3.1.4</version.plugin.jib>
</properties>
Expand Down Expand Up @@ -60,7 +60,7 @@
<version>${version.plugin.jib}</version>
<configuration>
<from>
<image>gcr.io/distroless/java:11</image>
<image>gcr.io/distroless/java11</image>
</from>
<to>
<image>${project.artifactId}</image>
Expand Down
6 changes: 3 additions & 3 deletions examples/021_deployment/pom.xml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<?xml version="1.0"?>
<!--
Copyright (c) 2019, 2021, Oracle and/or its affiliates.
Copyright (c) 2019, 2022, Oracle and/or its affiliates.
Licensed under the Universal Permissive License v 1.0 as shown at
http://oss.oracle.com/licenses/upl.
-->
Expand All @@ -16,7 +16,7 @@

<properties>
<coherence.group.id>com.oracle.coherence.ce</coherence.group.id>
<coherence.version>21.06.2</coherence.version>
<coherence.version>21.12.1</coherence.version>

<helidon.version>1.3.1</helidon.version>

Expand Down Expand Up @@ -62,7 +62,7 @@
<version>${jib.version}</version>
<configuration>
<from>
<image>gcr.io/distroless/java:11</image>
<image>gcr.io/distroless/java11</image>
</from>
<to>
<image>${project.artifactId}</image>
Expand Down
Loading