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

Commit

Permalink
Release 0.5.0 (#192)
Browse files Browse the repository at this point in the history
  • Loading branch information
lucacome authored Jan 12, 2022
1 parent 2ddfcad commit 07d9f5d
Show file tree
Hide file tree
Showing 15 changed files with 96 additions and 35 deletions.
13 changes: 13 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -158,6 +158,17 @@ jobs:
labels: |
org.opencontainers.image.documentation=https://docs.nginx.com/nginx-ingress-controller
org.opencontainers.image.vendor=NGINX Inc <kubernetes@nginx.com>
- name: Output Variables
id: var
run: |
version=${{ steps.meta.outputs.version }}
if ${{ startsWith(github.ref, 'refs/tags/') }}; then
operator_version=v$version
else
tag=$(git describe --tags --abbrev=0)
operator_version=$tag-$version-${{ needs.vars.outputs.sha_short }}
fi
echo "::set-output name=version::$operator_version"
- name: Build Image
uses: docker/build-push-action@v2
with:
Expand All @@ -171,6 +182,8 @@ jobs:
load: ${{ github.event_name == 'pull_request' }}
push: ${{ github.event_name != 'pull_request' }}
pull: true
build-args: |
VERSION=${{ steps.var.outputs.version }}
- name: Run Trivy vulnerability scanner
uses: aquasecurity/trivy-action@0.2.1
continue-on-error: true
Expand Down
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
# Changelog

### 0.5.0

An automatically generated list of changes can be found on Github at: [0.5.0 Release](https://github.com/nginxinc/nginx-ingress-operator/releases/tag/v0.5.0)

### 0.4.0

An automatically generated list of changes can be found on Github at: [0.4.0 Release](https://github.com/nginxinc/nginx-ingress-operator/releases/tag/v0.4.0)
Expand Down
3 changes: 2 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@ COPY config/crd/kic ./config/crd/kic
COPY LICENSE /licenses/

LABEL name="NGINX Ingress Operator" \
vendor="NGINX Inc <kubernetes@nginx.com" \
maintainer="kubernetes@nginx.com" \
vendor="NGINX Inc" \
version="v${VERSION}" \
release="1" \
summary="The NGINX Ingress Operator is a Kubernetes/OpenShift component which deploys and manages one or more NGINX/NGINX Plus Ingress Controllers" \
Expand Down
7 changes: 3 additions & 4 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
# To re-generate a bundle for another specific version without changing the standard setup, you can:
# - use the VERSION as arg of the bundle target (e.g make bundle VERSION=0.0.2)
# - use environment variables to overwrite this value (e.g export VERSION=0.0.2)
VERSION ?= 0.4.0
VERSION ?= 0.5.0

# CHANNELS define the bundle channels used in the bundle.
# Add a new line here if you would like to change its default config. (E.g CHANNELS = "preview,fast,stable")
Expand Down Expand Up @@ -155,18 +155,17 @@ endef

.PHONY: bundle
bundle: manifests kustomize ## Generate bundle manifests and metadata, then validate generated files.
yq eval '.metadata.annotations.containerImage = "${IMG}"' -i config/manifests/bases/nginx-ingress-operator.clusterserviceversion.yaml
operator-sdk generate kustomize manifests -q
cd config/manager && $(KUSTOMIZE) edit set image controller=$(IMG)
$(KUSTOMIZE) build config/manifests | operator-sdk generate bundle -q --overwrite --version $(VERSION) $(BUNDLE_METADATA_OPTS)
@printf "%s\n" '' 'LABEL com.redhat.openshift.versions="v4.5"' 'LABEL com.redhat.delivery.operator.bundle=true' 'LABEL com.redhat.delivery.backport=true' >> bundle.Dockerfile
operator-sdk bundle validate ./bundle

.PHONY: bundle-build
bundle-build: ## Build the bundle image.
docker build -f bundle.Dockerfile -t $(BUNDLE_IMG) .

openshift-bundle-build: bundle ## Build the bundle image for OpenShift.
@printf "%s\n" '' 'LABEL com.redhat.openshift.versions="v4.5"' 'LABEL com.redhat.delivery.operator.bundle=true' 'LABEL com.redhat.delivery.backport=true' >> bundle.Dockerfile

.PHONY: bundle-push
bundle-push: ## Push the bundle image.
$(MAKE) docker-push IMG=$(BUNDLE_IMG)
Expand Down
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ The following table shows the relation between the versions of the two projects:

| NGINX Ingress Controller | NGINX Ingress Operator |
| --- | --- |
| 2.1.x | 0.5.0 |
| 2.0.x | 0.4.0 |
| 1.12.x | 0.3.0 |
| 1.11.x | 0.2.0 |
Expand All @@ -38,7 +39,7 @@ See [upgrade docs](./docs/upgrades)
## NGINX Ingress Operator Releases
We publish NGINX Ingress Operator releases on GitHub. See our [releases page](https://github.com/nginxinc/nginx-ingress-operator/releases).

The latest stable release is [0.4.0](https://github.com/nginxinc/nginx-ingress-operator/releases/tag/v0.4.0). For production use, we recommend that you choose the latest stable release.
The latest stable release is [0.5.0](https://github.com/nginxinc/nginx-ingress-operator/releases/tag/v0.5.0). For production use, we recommend that you choose the latest stable release.

## Development

Expand All @@ -54,7 +55,7 @@ It is possible to run the operator in your local machine. This is useful for tes
```
2. Run `make run`.
The operator will run in your local machine but will be communicating with the cluster.
The operator will run in your local machine but will be communicating with the cluster.
### Update CRD
Expand Down
8 changes: 4 additions & 4 deletions api/v1alpha1/nginxingresscontroller_types.go
Original file line number Diff line number Diff line change
Expand Up @@ -283,13 +283,13 @@ type AppProtectDos struct {
// Enable App Protect Dos.
Enable bool `json:"enable"`
// Enable debug mode.
Debug bool `json:"debug"`
Debug bool `json:"debug,omitempty"`
// Max number of ADMD instances.
MaxDaemons int `json:"maxDaemons"`
MaxDaemons int `json:"maxDaemons,omitempty"`
// Max number of nginx processes to support.
MaxWorkers int `json:"maxWorkers"`
MaxWorkers int `json:"maxWorkers,omitempty"`
// RAM memory size in MB.
Memory int `json:"memory"`
Memory int `json:"memory,omitempty"`
}

// Service defines the Service for the Ingress Controller.
Expand Down
33 changes: 28 additions & 5 deletions bundle/manifests/k8s.nginx.org_nginxingresscontrollers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,11 +41,34 @@ spec:
nullable: true
properties:
enable:
description: Enable App Protect.
description: Enable App Protect WAF.
type: boolean
required:
- enable
type: object
appProtectDos:
description: App Protect Dos support configuration. Requires enableCRDs
set to true.
nullable: true
properties:
debug:
description: Enable debug mode.
type: boolean
enable:
description: Enable App Protect Dos.
type: boolean
maxDaemons:
description: Max number of ADMD instances.
type: integer
maxWorkers:
description: Max number of nginx processes to support.
type: integer
memory:
description: RAM memory size in MB.
type: integer
required:
- enable
type: object
configMapData:
additionalProperties:
type: string
Expand Down Expand Up @@ -241,15 +264,15 @@ spec:
description: The service of the Ingress controller.
nullable: true
properties:
extraLabels:
extraAnnotations:
additionalProperties:
type: string
description: Specifies extra labels of the service.
description: Specifies extra annotations of the service.
type: object
extraAnnotations:
extraLabels:
additionalProperties:
type: string
description: Specifies extra annotations of the service.
description: Specifies extra labels of the service.
type: object
type: object
serviceType:
Expand Down
23 changes: 18 additions & 5 deletions bundle/manifests/nginx-ingress-operator.clusterserviceversion.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ metadata:
"image": {
"pullPolicy": "Always",
"repository": "docker.io/nginx/nginx-ingress",
"tag": "2.0.0-ubi"
"tag": "2.1.0-ubi"
},
"ingressClass": "nginx",
"nginxPlus": false,
Expand All @@ -24,9 +24,16 @@ metadata:
}
]
capabilities: Basic Install
categories: Monitoring, Networking
certified: "true"
containerImage: nginx/nginx-ingress-operator:0.5.0
description: The NGINX Ingress Operator is a Kubernetes/OpenShift component which
deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
operators.operatorframework.io/builder: operator-sdk-v1.15.0
operators.operatorframework.io/project_layout: go.kubebuilder.io/v3
name: nginx-ingress-operator.v0.4.0
repository: https://github.com/nginxinc/nginx-ingress-operator
support: NGINX Inc.
name: nginx-ingress-operator.v0.5.0
namespace: placeholder
spec:
apiservicedefinitions: {}
Expand All @@ -52,6 +59,10 @@ spec:
true.
displayName: App Protect
path: appProtect
- description: App Protect Dos support configuration. Requires enableCRDs set
to true.
displayName: App Protect Dos
path: appProtectDos
- description: Initial values of the Ingress Controller ConfigMap. Check https://docs.nginx.com/nginx-ingress-controller/configuration/global-configuration/configmap-resource/
for more information about possible values.
displayName: Config Map Data
Expand Down Expand Up @@ -215,6 +226,7 @@ spec:
- update
- apiGroups:
- appprotect.f5.com
- appprotectdos.f5.com
- k8s.nginx.org
resources:
- '*'
Expand Down Expand Up @@ -364,7 +376,7 @@ spec:
valueFrom:
fieldRef:
fieldPath: metadata.annotations['olm.targetNamespaces']
image: nginx/nginx-ingress-operator:0.4.0
image: nginx/nginx-ingress-operator:0.5.0
livenessProbe:
httpGet:
path: /healthz
Expand Down Expand Up @@ -449,7 +461,8 @@ spec:
- email: kubernetes@nginx.com
name: NGINX Inc
maturity: alpha
minKubeVersion: 1.19.0
provider:
name: NGINX Inc
replaces: nginx-ingress-operator.v0.2.0
version: 0.4.0
replaces: nginx-ingress-operator.v0.4.0
version: 0.5.0
4 changes: 0 additions & 4 deletions config/crd/bases/k8s.nginx.org_nginxingresscontrollers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -69,11 +69,7 @@ spec:
description: RAM memory size in MB.
type: integer
required:
- debug
- enable
- maxDaemons
- maxWorkers
- memory
type: object
configMapData:
additionalProperties:
Expand Down
2 changes: 1 addition & 1 deletion config/manager/kustomization.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@ kind: Kustomization
images:
- name: controller
newName: nginx/nginx-ingress-operator
newTag: 0.4.0
newTag: 0.5.0
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,13 @@ metadata:
annotations:
alm-examples: '[]'
capabilities: Basic Install
categories: Monitoring, Networking
certified: "true"
containerImage: nginx/nginx-ingress-operator:0.5.0
description: The NGINX Ingress Operator is a Kubernetes/OpenShift component which
deploys and manages one or more NGINX/NGINX Plus Ingress Controllers
repository: https://github.com/nginxinc/nginx-ingress-operator
support: NGINX Inc.
name: nginx-ingress-operator.v0.0.0
namespace: placeholder
spec:
Expand All @@ -30,6 +37,10 @@ spec:
true.
displayName: App Protect
path: appProtect
- description: App Protect Dos support configuration. Requires enableCRDs set
to true.
displayName: App Protect Dos
path: appProtectDos
- description: Initial values of the Ingress Controller ConfigMap. Check https://docs.nginx.com/nginx-ingress-controller/configuration/global-configuration/configmap-resource/
for more information about possible values.
displayName: Config Map Data
Expand Down Expand Up @@ -184,7 +195,8 @@ spec:
- email: kubernetes@nginx.com
name: NGINX Inc
maturity: alpha
minKubeVersion: 1.19.0
provider:
name: NGINX Inc
replaces: nginx-ingress-operator.v0.2.0
replaces: nginx-ingress-operator.v0.4.0
version: 0.0.0
2 changes: 1 addition & 1 deletion config/samples/k8s_v1alpha1_nginxingresscontroller.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ spec:
nginxPlus: false
image:
repository: docker.io/nginx/nginx-ingress
tag: 2.0.0-ubi
tag: 2.1.0-ubi
pullPolicy: Always
serviceType: NodePort
ingressClass: nginx
8 changes: 4 additions & 4 deletions docs/manual-installation.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,22 +8,22 @@ This will deploy the operator in the `nginx-ingress-operator-system` namespace.
```
git clone https://github.com/nginxinc/nginx-ingress-operator/
cd nginx-ingress-operator/
git checkout v0.4.0
git checkout v0.5.0
```
2. `Openshift` To deploy the Operator and associated resources to an OpenShift environment, run:
```
make openshift-deploy IMG=registry.connect.redhat.com/nginx/nginx-ingress-operator:0.4.0
make deploy IMG=registry.connect.redhat.com/nginx/nginx-ingress-operator:0.5.0
```
3. Alternatively, to deploy the Operator and associated resources to all other environments:
```
make deploy IMG=nginx/nginx-ingress-operator:0.4.0
make deploy IMG=nginx/nginx-ingress-operator:0.5.0
```
2. Check that the Operator is running:
```
kubectl get deployments -n nginx-ingress-operator-system
kubectl get deployments -n nginx-ingress-operator-system
NAME READY UP-TO-DATE AVAILABLE AGE
nginx-ingress-operator-controller-manager 1/1 1 1 15s
Expand Down
3 changes: 1 addition & 2 deletions examples/deployment-oss-min/nginx-ingress-controller.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,7 @@ spec:
nginxPlus: false
image:
repository: nginx/nginx-ingress
tag: 2.0.0-ubi
tag: 2.1.0-ubi
pullPolicy: Always
replicas: 1
serviceType: NodePort

2 changes: 1 addition & 1 deletion examples/deployment-plus-min/nginx-ingress-controller.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ spec:
nginxPlus: true
image:
repository: nginx-plus-ingress
tag: 2.0.0-ubi
tag: 2.1.0-ubi
pullPolicy: IfNotPresent
replicas: 1
serviceType: NodePort
Expand Down

0 comments on commit 07d9f5d

Please sign in to comment.