Skip to content
This repository has been archived by the owner on Mar 21, 2024. It is now read-only.

Commit

Permalink
Renaming
Browse files Browse the repository at this point in the history
  • Loading branch information
Eliatra committed Nov 26, 2023
1 parent 4174371 commit 2046d8d
Show file tree
Hide file tree
Showing 158 changed files with 1,173 additions and 1,264 deletions.
19 changes: 9 additions & 10 deletions .github/workflows/busybox.yaml
Original file line number Diff line number Diff line change
@@ -1,30 +1,29 @@
# A special manual workflow to push a busybox image into our public ecr registry. This image is used for the init helper containers
name: Push busybox image to ecr
# A special manual workflow to push a busybox image into our public registry. This image is used for the init helper containers
name: Push busybox image to docker hub
on: workflow_dispatch


jobs:
release:
name: Push busybox image to ecr
name: Push busybox image to docker hub
runs-on: ubuntu-latest
environment:
name: k8s-operator
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}

- name: Pull and Push docker image
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
cd opensearch-operator
export IMG=public.ecr.aws/opsterio/busybox:1.27.2-buildx
export IMG=docker.io/eliatra/eoko-busybox:1.27.2-buildx
echo $IMG
aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws/opsterio
docker buildx build -f Dockerfile-busybox --platform="linux/amd64,linux/arm,linux/arm64" . -t $IMG --push
cd ..
1 change: 1 addition & 0 deletions .github/workflows/docker-build.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
name: "Docker Build"
on:
workflow_dispatch:
pull_request:
branches:
- "main"
Expand Down
9 changes: 5 additions & 4 deletions .github/workflows/functional-tests.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
name: Functional tests
on: [pull_request]
on: [pull_request,workflow_dispatch]


jobs:
operator:
Expand Down Expand Up @@ -35,7 +36,7 @@ jobs:
k3d image import -c $CLUSTER_NAME controller:latest
## Install helm chart
helm install opensearch-operator ../charts/opensearch-operator --set manager.image.repository=controller --set manager.image.tag=latest --set manager.image.pullPolicy=IfNotPresent --namespace default --wait
helm install eoko ../charts/opensearch-operator --set manager.image.repository=controller --set manager.image.tag=latest --set manager.image.pullPolicy=IfNotPresent --namespace default --wait
cd functionaltests
## Run tests
Expand Down Expand Up @@ -74,8 +75,8 @@ jobs:
k3d image import -c $CLUSTER_NAME controller:latest
## Install helm chart
helm install opensearch-operator ../charts/opensearch-operator --set manager.image.repository=controller --set manager.image.tag=latest --set manager.image.pullPolicy=IfNotPresent --namespace default --wait
helm install opensearch-cluster ../charts/opensearch-cluster --set OpenSearchClusterSpec.enabled=true --wait
helm install eoko ../charts/opensearch-operator --set manager.image.repository=controller --set manager.image.tag=latest --set manager.image.pullPolicy=IfNotPresent --namespace default --wait
helm install eoko-cluster ../charts/opensearch-cluster --set OpenSearchClusterSpec.enabled=true --wait
cd functionaltests
## Run tests
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/linting.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Golang Lint
on: [pull_request]
on: [pull_request,workflow_dispatch]

jobs:
golangci:
Expand Down
43 changes: 30 additions & 13 deletions .github/workflows/prepare-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,16 +3,14 @@ on:
workflow_dispatch:
inputs:
version:
description: 'Version for the release, semver, NO "v" prefix'
description: 'Version for the release, semver, NO "v" prefix, semver x.y.z'
required: true
type: string

jobs:
release:
name: Prepare and publish release
runs-on: ubuntu-latest
environment:
name: k8s-operator
steps:
- name: Checkout code
uses: actions/checkout@v2
Expand All @@ -22,6 +20,11 @@ jobs:
go-version: "1.19"
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Run tests
run: |
# Run test suite to make sure we have a functional commit
Expand All @@ -31,7 +34,7 @@ jobs:
- name: Prepare helm chart
run: |
# Copy CRDs to chart to make sure they are identical
cp opensearch-operator/config/crd/bases/opensearch.opster.io_*.yaml charts/opensearch-operator/files/
cp opensearch-operator/config/crd/bases/opensearch.eliatra.io_*.yaml charts/opensearch-operator/files/
# Set versions in helm chart
sed -i -e 's/^appVersion:.*/appVersion: '$RELEASE_VERSION'/' charts/opensearch-operator/Chart.yaml
sed -i -e 's/^version:.*/version: '$RELEASE_VERSION'/' charts/opensearch-operator/Chart.yaml
Expand All @@ -52,16 +55,12 @@ jobs:

- name: Build and Push docker image
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RELEASE_VERSION: ${{ inputs.version }}
run: |
cd opensearch-operator
export IMG=public.ecr.aws/opsterio/opensearch-operator:$RELEASE_VERSION
export IMG=docker.io/eliatra/eoko:$RELEASE_VERSION
echo $IMG
aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws/opsterio
docker buildx build -t $IMG --platform="linux/amd64,linux/arm,linux/arm64" . -f Dockerfile --push
cd ..
Expand All @@ -70,11 +69,29 @@ jobs:
with:
version: v3.8.1

- name: Publish helm chart
uses: stefanprodan/helm-gh-pages@master
- name: Publish opensearch-cluster helm chart
uses: appany/[email protected]
with:
name: eoko-cluster
path: charts/opensearch-cluster
repository: ${{ secrets.DOCKERHUB_USERNAME }}
tag: ${{ github.ref }}
registry: docker.io
registry_username: ${{ secrets.DOCKERHUB_USERNAME }}
registry_password: ${{ secrets.DOCKERHUB_TOKEN }}
update_dependencies: 'true' # Defaults to false

- name: Publish opensearch-operator helm chart
uses: appany/[email protected]
with:
charts_dir: charts/
token: ${{ secrets.GITHUB_TOKEN }}
name: eoko
path: charts/opensearch-operator
repository: ${{ secrets.DOCKERHUB_USERNAME }}
tag: ${{ github.ref }}
registry: docker.io
registry_username: ${{ secrets.DOCKERHUB_USERNAME }}
registry_password: ${{ secrets.DOCKERHUB_TOKEN }}
update_dependencies: 'true' # Defaults to false

- name: Create Release
id: create_release
Expand Down
39 changes: 28 additions & 11 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,6 @@ on:
jobs:
release:
runs-on: ubuntu-latest
environment:
name: k8s-operator
name: Release
steps:
- name: Checkout
Expand All @@ -18,23 +16,24 @@ jobs:
go-version: '1.19'
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: set Env
id: github-ver
run: |
echo "RELEASE_VERSION=${GITHUB_REF#refs/*/v}" >> $GITHUB_ENV
- name: Build and Push docker image
env:
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
AWS_REGION: ${{ secrets.AWS_DEFAULT_REGION }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
cd opensearch-operator
make test
export IMG=public.ecr.aws/opsterio/opensearch-operator:$RELEASE_VERSION
export IMG=docker.io/eliatra/opensearch-operator:$RELEASE_VERSION
echo $IMG
aws ecr-public get-login-password --region us-east-1 | docker login --username AWS --password-stdin public.ecr.aws/opsterio
docker buildx build -t $IMG --platform="linux/amd64,linux/arm,linux/arm64" . -f Dockerfile --push
- name: Make sure helm chart has correct versions
Expand All @@ -47,11 +46,29 @@ jobs:
with:
version: v3.8.1

- name: Publish helm chart
uses: stefanprodan/helm-gh-pages@master
- name: Publish opensearch-cluster helm chart
uses: appany/[email protected]
with:
name: eoko-cluster
path: charts/opensearch-cluster
repository: ${{ secrets.DOCKERHUB_USERNAME }}
tag: ${{ github.ref }}
registry: docker.io
registry_username: ${{ secrets.DOCKERHUB_USERNAME }}
registry_password: ${{ secrets.DOCKERHUB_TOKEN }}
update_dependencies: 'true' # Defaults to false

- name: Publish opensearch-operator helm chart
uses: appany/[email protected]
with:
charts_dir: charts/
token: ${{ secrets.GITHUB_TOKEN }}
name: eoko
path: charts/opensearch-operator
repository: ${{ secrets.DOCKERHUB_USERNAME }}
tag: ${{ github.ref }}
registry: docker.io
registry_username: ${{ secrets.DOCKERHUB_USERNAME }}
registry_password: ${{ secrets.DOCKERHUB_TOKEN }}
update_dependencies: 'true' # Defaults to false

- name: Create Release
id: create_release
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/testing.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: Testing
on: [pull_request]
on: [pull_request,workflow_dispatch]

jobs:
unit-tests:
Expand Down
4 changes: 2 additions & 2 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ The OpenSearch K8S Operator is a community project that is built and maintained

## First Things First

1. **When in doubt, open an issue** - For almost any type of contribution, the first step is opening an issue. Even if you think you already know what the solution is, writing down a description of the problem you're trying to solve will help everyone get context when they review your pull request. If it's truly a trivial change (e.g. spelling error), you can skip this step -- but as the subject says, when in doubt, [open an issue](https://github.com/Opster/opensearch-k8s-operator/issues).
1. **When in doubt, open an issue** - For almost any type of contribution, the first step is opening an issue. Even if you think you already know what the solution is, writing down a description of the problem you're trying to solve will help everyone get context when they review your pull request. If it's truly a trivial change (e.g. spelling error), you can skip this step -- but as the subject says, when in doubt, [open an issue](https://github.com/Eliatra/opensearch-k8s-operator/issues).

2. **Only submit your own work** (or work you have sufficient rights to submit) - Please make sure that any code or documentation you submit is your work or you have the rights to submit. We respect the intellectual property rights of others, and as part of contributing, we'll ask you to sign your contribution with a "Developer Certificate of Origin" (DCO) that states you have the rights to submit this work and you understand we'll use your contribution. There's more information about this topic in the [DCO section](#developer-certificate-of-origin).

Expand Down Expand Up @@ -93,7 +93,7 @@ You may type this line on your own when writing your commit messages. However, i

## Review Process

We deeply appreciate everyone who takes the time to make a contribution. We will review all contributions as quickly as possible. As a reminder, [opening an issue](https://github.com/Opster/opensearch-k8s-operator) discussing your change before you make it is the best way to smooth the PR process. This will prevent a rejection because someone else is already working on the problem, or because the solution is incompatible with the architectural direction.
We deeply appreciate everyone who takes the time to make a contribution. We will review all contributions as quickly as possible. As a reminder, [opening an issue](https://github.com/Eliatra/opensearch-k8s-operator) discussing your change before you make it is the best way to smooth the PR process. This will prevent a rejection because someone else is already working on the problem, or because the solution is incompatible with the architectural direction.

During the PR process, expect that there will be some back-and-forth. Please try to respond to comments in a timely fashion, and if you don't wish to continue with the PR, let us know. If a PR takes too many iterations for its complexity or size, we may reject it. Additionally, if you stop responding we may close the PR as abandoned. In either case, if you feel this was done in error, please add a comment on the PR.

Expand Down
9 changes: 8 additions & 1 deletion MAINTAINERS.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,12 @@
# Maintainers


| Maintainer | GitHub ID | Affiliation |
| --------------- | --------- | ----------- |


# Previous Maintainers (Opster)

| Maintainer | GitHub ID | Affiliation |
| --------------- | --------- | ----------- |
| Idan Levy | [idanl21](https://github.com/idanl21) | Opster |
Expand Down Expand Up @@ -27,4 +34,4 @@ After the workflow has completed, navigate to releases and edit the new release.

In case it is needed you can also manually tag a commit for release, this will trigger a workflow that stars with the "Build and push the docker image" step. Make sure CRDs are up-to-date in the helm chart.

After releasing a new version add it to the compatiblity matrix in the [README](README.md).
After releasing a new version add it to the compatibility matrix in the [README](README.md).
6 changes: 6 additions & 0 deletions NOTICE.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Eliatra OpenSearch Kubernetes Operator (EOKO) (https://github.com/eliatra/opensearch-k8s-operator)
Copyright Eliatra Contributors

This product includes software developed by
Opster (https://opster.com/).
Copyright 2019-2023 Opster Ltd.
40 changes: 19 additions & 21 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
![build](https://github.com/opster/opensearch-k8s-operator/actions/workflows/docker-build.yaml/badge.svg) ![test](https://github.com/opster/opensearch-k8s-operator/actions/workflows/testing.yaml/badge.svg) ![release](https://img.shields.io/github/v/release/opster/opensearch-k8s-operator) [![Golang Lint](https://github.com/Opster/opensearch-k8s-operator/actions/workflows/linting.yaml/badge.svg)](https://github.com/Opster/opensearch-k8s-operator/actions/workflows/linting.yaml) [![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/opensearch-operator)](https://artifacthub.io/packages/search?repo=opensearch-operator)
# Eliatra OpenSearch Kubernetes Operator (EOKO)

# OpenSearch Kubernetes Operator
This is a fork of https://github.com/Opster/opensearch-k8s-operator.

The Kubernetes OpenSearch Operator is used for automating the deployment, provisioning, management, and orchestration of OpenSearch clusters and OpenSearch dashboards.
The Eliatra OpenSearch Kubernetes Operator is used for automating the deployment, provisioning, management, and orchestration of OpenSearch clusters and OpenSearch dashboards.

To get all the capabilities of the Operator with a UI, you can use the free [Opster Management Console](https://opster.com/opensearch-opster-management-console/). Beyond being able to easily carry out all of the actions provided by the Operator, it also include additional features like monitoring and more.
For more information and commercial support go to [https://eliatra.com/](https://eliatra.com/).

## Getting started

Expand Down Expand Up @@ -40,31 +40,16 @@ Features:

The Operator can be easily installed using Helm:

1. Add the helm repo: `helm repo add opensearch-operator https://opster.github.io/opensearch-k8s-operator/`
1. Add the helm repo: `helm repo add opensearch-operator https://eliatra.github.io/opensearch-k8s-operator/`
2. Install the Operator: `helm install opensearch-operator opensearch-operator/opensearch-operator`

## OpenSearch Kubernetes Operator installation & demo video

[![Watch the video](https://opster.com/wp-content/uploads/2022/05/Operator-Installation-Tutorial.png)](https://player.vimeo.com/video/708641527)

## Manage OpenSearch on K8s through a single interface (UI)

To get all the capabilities of the Operator with a UI, you can use the free [Opster Management Console](https://opster.com/opensearch-opster-management-console/). Beyond being able to easily carry out all of the actions provided by the Operator, it also include additional features like monitoring and more.

[![Watch the video](https://opster.com/wp-content/uploads/2023/04/Screen-cap-for-omc-video.png)](https://player.vimeo.com/video/767761262)

## Compatibility

The opensearch k8s operator aims to be compatible to all supported opensearch versions. Please check the table below for details:

| Operator Version | Min Supported Opensearch Version | Max supported Opensearch version | Comment |
|------------------|----------------------------------|----------------------------------|---------|
| 2.3 | 1.0 | 2.8 | |
| 2.2 | 1.0 | 2.5 | |
| 2.1 | 1.0 | 2.3 | |
| 2.0 | 1.0 | 2.3 | |
| 1.x | 1.0 | 1.x | |
| 0.x | 1.0 | 1.x | Beta |
| 2.5 | 1.0 | 2.8 | |

This table only lists versions that have been explicitly tested with the operator, the operator will not prevent you from using other versions. Newer minor versions (2.x) not listed here generally also work but you should proceed with caution and test it our in a non-production environment first.

Expand All @@ -75,3 +60,16 @@ If you want to develop the operator, please see the separate [developer docs](./
## Contributions

We welcome contributions! See how you can get involved by reading [CONTRIBUTING.md](./CONTRIBUTING.md).

## License

This project is licensed under the Apache v2.0 License.

## Copyright

Copyright Eliatra Contributors. See NOTICE for details.

## Trademark

This repo includes certain Apache-licensed Opster code from Opster Ltd. and other source code.
Opster Ltd. is not the source of that other source code. Opster is a registered trademark of Opster Ltd.
4 changes: 2 additions & 2 deletions charts/opensearch-cluster/Chart.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
apiVersion: v2
name: opensearch-cluster
description: A Helm chart for OpenSearch Cluster
name: eoko-cluster
description: A Helm chart for OpenSearch Cluster managed by EOKO
type: application
version: 2.4.0
appVersion: 2.4.0
Loading

0 comments on commit 2046d8d

Please sign in to comment.