Compare commits

...
32 Commits
Author SHA1 Message Date
Tom Pantelis d91eae8312 Mark the source directory as safe
See https://github.blog/2022-04-12-git-security-vulnerability-announced/
for context. git now refuses to handle repositories which don't belong
to the current user by default; such repositories need to be
explicitly marked as safe, in the global configuration for the current user.

This fixes the failing release job.

Signed-off-by: Tom Pantelis <tompantelis@gmail.com>
2022-06-09 10:28:21 -04:00
dependabot[bot]andThomas Pantelis da4a2709f1 Bump actions/setup-python from 3.1.2 to 4
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 3.1.2 to 4.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/98f2ad02fd48d057ee3b4d4f66525b231c3e52b6...d09bd5e6005b175076f227b13d9730d56e9dcfcb)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-06-09 07:38:35 -04:00
dependabot[bot]andThomas Pantelis 9fa73fb79a Bump actions/checkout from 2.3.4 to 3.0.2
Bumps [actions/checkout](https://github.com/actions/checkout) from 2.3.4 to 3.0.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f...2541b1294d2704b0964813337f33b291d3f8596b)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-19 07:37:20 -04:00
dependabot[bot]andThomas Pantelis 06379643b8 Bump ibiqlik/action-yamllint from 3.0.4 to 3.1
Bumps [ibiqlik/action-yamllint](https://github.com/ibiqlik/action-yamllint) from 3.0.4 to 3.1.
- [Release notes](https://github.com/ibiqlik/action-yamllint/releases)
- [Commits](https://github.com/ibiqlik/action-yamllint/compare/ed2b6e911569708ed121c14b87d513860a7e36a7...81e214fd484713882ce4237cb7cd264d550856cf)

---
updated-dependencies:
- dependency-name: ibiqlik/action-yamllint
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-19 07:13:33 -04:00
Daniel FarrellandThomas Pantelis 629e48f944 Bump markdown-link-check to the current tip
This hasn't been released yet but fixes the safe directories git
errors.

Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
2022-05-19 07:02:45 -04:00
dependabot[bot]andThomas Pantelis 5caa6c7997 Bump z0al/dependent-issues
Bumps [z0al/dependent-issues](https://github.com/z0al/dependent-issues) from 70a1b2d4ee1cdc743af33498bd0204123953a887 to 1.5.1. This release includes the previously tagged commit.
- [Release notes](https://github.com/z0al/dependent-issues/releases)
- [Commits](https://github.com/z0al/dependent-issues/compare/70a1b2d4ee1cdc743af33498bd0204123953a887...0fae07162bc9e0d8e116a133bd03686eed6efa21)

---
updated-dependencies:
- dependency-name: z0al/dependent-issues
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-18 08:55:27 -04:00
dependabot[bot]andThomas Pantelis 4161982f7b Bump peter-evans/create-issue-from-file from 3.0.0 to 4
Bumps [peter-evans/create-issue-from-file](https://github.com/peter-evans/create-issue-from-file) from 3.0.0 to 4.
- [Release notes](https://github.com/peter-evans/create-issue-from-file/releases)
- [Commits](https://github.com/peter-evans/create-issue-from-file/compare/97e6f902a416aac38834e23fa52e166aad0437d2...99b87c35610e986ad2034a7b0518a9b3ebea541b)

---
updated-dependencies:
- dependency-name: peter-evans/create-issue-from-file
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-18 08:02:18 -04:00
dependabot[bot]andThomas Pantelis e4a2e0374b Bump tim-actions/get-pr-commits from 1.1.0 to 1.2.0
Bumps [tim-actions/get-pr-commits](https://github.com/tim-actions/get-pr-commits) from 1.1.0 to 1.2.0.
- [Release notes](https://github.com/tim-actions/get-pr-commits/releases)
- [Commits](https://github.com/tim-actions/get-pr-commits/compare/55b867b9b28954e6f5c1a0fe2f729dc926c306d0...c64db31d359214d244884dd68f971a110b29ab83)

---
updated-dependencies:
- dependency-name: tim-actions/get-pr-commits
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-18 07:55:56 -04:00
dependabot[bot]andThomas Pantelis 20b0c70a61 Bump actions/setup-python from 2.2.2 to 3.1.2
Bumps [actions/setup-python](https://github.com/actions/setup-python) from 2.2.2 to 3.1.2.
- [Release notes](https://github.com/actions/setup-python/releases)
- [Commits](https://github.com/actions/setup-python/compare/dc73133d4da04e56a135ae2246682783cc7c7cb6...98f2ad02fd48d057ee3b4d4f66525b231c3e52b6)

---
updated-dependencies:
- dependency-name: actions/setup-python
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-18 07:18:23 -04:00
dependabot[bot]andThomas Pantelis 0e639cb9a3 Bump helm/chart-testing-action from 2.1.0 to 2.2.1
Bumps [helm/chart-testing-action](https://github.com/helm/chart-testing-action) from 2.1.0 to 2.2.1.
- [Release notes](https://github.com/helm/chart-testing-action/releases)
- [Commits](https://github.com/helm/chart-testing-action/compare/5f16c27cf7a4fa9c776ff73734df3909b2b65127...dae259e86a35ff09145c0805e2d7dd3f7207064a)

---
updated-dependencies:
- dependency-name: helm/chart-testing-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-05-18 07:17:58 -04:00
Automated Release c15111b329 Update base image to use stable branch 'release-0.12'
Signed-off-by: Automated Release <release@submariner.io>
2022-03-02 10:16:16 +00:00
Stephen KittandThomas Pantelis 76c4e94da1 Check for fixup commits in PRs
Commits produced using "git commit --fix" are great for review, but
must be squashed before a PR is merged.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2022-01-20 14:13:24 -05:00
Daniel FarrellandDaniel Farrell b6590df91b Update K8s in E2E, EOL 1.19 and add 1.23
Update the versions of Kubernetes tested in the E2E CI. Add 1.23 as the
new default for most tests, remove 1.19 as it is now EOL.

Signed-off-by: Daniel Farrell <dfarrell@redhat.com>
2022-01-18 10:41:38 -05:00
Sridhar GaddamandThomas Pantelis bf2c41115b Configure RBAC for Globalnet pods on OCP deployments
Globalnet controller now uses internal services with external-ips
to support exported services. On OCP Clusters, we require an explicit
RBAC to create services with external-ips, this PR includes the
necessary RBAC for Globalnet pods.

Related to: https://github.com/submariner-io/submariner/issues/1166
Signed-Off-by: Sridhar Gaddam <sgaddam@redhat.com>
2022-01-13 12:35:40 -05:00
NegashandGitHub 9ba0123e72 Fix coreDNSCustomConfig values
Signed-off-by: Negash <i@negash.ru>
2022-01-05 12:47:35 +00:00
Sridhar GaddamandThomas Pantelis b3a5e40a5a Globalnet include ClusterRole for services
As part of Globalnet enhancement where kubeproxy dependency
is removed, the Globalnet Pod will now create internal
services for every exported service in the respective
namespace where the original service resides. This PR
adds the necessary clusterRole to allow Globalnet pod
to create/delete such internal services.

Related to: https://github.com/submariner-io/submariner/issues/1166
Signed-off-by: Sridhar Gaddam <sgaddam@redhat.com>
2022-01-04 07:48:50 -05:00
Stephen KittandThomas Pantelis 9358c86eb5 Add roles and privileges required for monitoring
This replicates the RBAC changes applied to the operator in
https://github.com/submariner-io/submariner-operator/pull/1416

Fixes: #191
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2021-12-16 07:59:53 -05:00
Masaki KimuraandDaniel Farrell 5da180d44f Allow submariner-globalnet role to handle endpoints
Signed-off-by: Masaki Kimura <masaki.kimura@hitachivantara.com>
2021-12-14 21:44:22 -05:00
Stephen KittandThomas Pantelis 7068abafc8 Add dfarrell07 as *.md code owner
See <https://github.com/submariner-io/submariner/issues/1622>.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2021-12-13 07:44:09 -05:00
Stephen KittandDaniel Farrell 2cfbd5c394 Update all CRDs to v1 CRDs
... and drop the obsolete Lighthouse CRDs.

Fixes: #186
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2021-12-08 15:37:07 -05:00
Stephen KittandThomas Pantelis 42a2af008a Pass the broker.insecure flag to the CR
Fixes: #185
Signed-off-by: Stephen Kitt <skitt@redhat.com>
2021-12-06 11:07:45 -05:00
Stephen KittandThomas Pantelis 1fbd3da4ae Remove mangelajo from CODEOWNERS
... with his approval.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2021-11-18 08:36:24 -05:00
Mike KolesnikandStephen Kitt 8c2c55cc9b Use YAML settings for shipyard
Makes it simple to view and change the deployment settings

Signed-off-by: Mike Kolesnik <mkolesni@redhat.com>
2021-11-09 10:49:38 +01:00
Stephen KittandThomas Pantelis fc77796287 Update K8s versions: drop 1.17/1.18, add 1.21/1.22
1.17 and 1.18 have reached EOL.

Signed-off-by: Stephen Kitt <skitt@redhat.com>
2021-11-08 13:52:07 -05:00
Vishal ThaparandDaniel Farrell 220ccc34f5 Fix connectionHealthCheck
connectionHealthCheck in submariner CR is a nested field
but is being added as a variable. This means it is ignored
and the field isn't set correctly in gateway pods.

Signed-off-by: Vishal Thapar <5137689+vthapar@users.noreply.github.com>
2021-10-27 12:36:06 -04:00
Aswin SurayanarayananandThomas Pantelis c3a885fec9 Add RBAC permission endpointslices/restricted in broker roles
Fixes : github.com/submariner-io/lighthouse/issues#627

Signed-off-by: Aswin Surayanarayanan <asuryana@redhat.com>
2021-10-26 08:12:41 -04:00
17f4fecfd9 Update submariner-operator/questions.yml
Co-authored-by: Sridhar Gaddam <sgaddam@redhat.com>
Signed-off-by: Victor  Godoy Hernández <vigohe@gmail.com>
2021-10-25 09:12:47 -04:00
Victor Godoy HernándezandThomas Pantelis 9ee272bec8 Update Readme.md
Signed-off-by: Victor  Godoy Hernández <vigohe@gmail.com>
2021-10-25 09:12:47 -04:00
Victor Godoy HernándezandThomas Pantelis 9347e8f345 Add ceIPSecForceUDPEncaps & coreDNSCustomConfig variables
Signed-off-by: Victor  Godoy Hernández <vigohe@gmail.com>
2021-10-25 09:12:47 -04:00
Victor Godoy HernándezandThomas Pantelis 916f255461 Add enable/disable connectionHealthCheck
Signed-off-by: Victor  Godoy Hernández <vigohe@gmail.com>
2021-10-25 09:12:47 -04:00
Victor Godoy HernándezandThomas Pantelis 756daf344e Bump up to 0.10.1
Signed-off-by: Victor  Godoy Hernández <vigohe@gmail.com>
2021-10-25 09:12:47 -04:00
Mike KolesnikandThomas Pantelis 839d20f972 Rename job so it won't shard on stable branches
Right now auto release logic updates `devel` to the stable branch name
when creating stable branches. This leads to this job "sharding" into
multiple jobs, and messes up branch protections.

To keep things simple, the main job name will remain the same so that
there's no "PR targets X" and "PR targets Y" jobs, just the one "PR
targets branch" job

Signed-off-by: Mike Kolesnik <mkolesni@redhat.com>
2021-10-20 11:18:35 -04:00
25 changed files with 1350 additions and 896 deletions
+4 -4
View File
@@ -5,10 +5,10 @@ on:
pull_request: pull_request:
jobs: jobs:
target_devel: target_branch:
name: PR targets devel name: PR targets branch
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check that the PR targets devel - name: Check that the PR targets release-0.12
if: ${{ github.base_ref != 'devel' }} if: ${{ github.base_ref != 'release-0.12' }}
run: exit 1 run: exit 1
+1 -1
View File
@@ -25,7 +25,7 @@ jobs:
if: github.repository_owner == 'submariner-io' if: github.repository_owner == 'submariner-io'
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- uses: z0al/dependent-issues@70a1b2d4ee1cdc743af33498bd0204123953a887 - uses: z0al/dependent-issues@0fae07162bc9e0d8e116a133bd03686eed6efa21
env: env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with: with:
+6 -6
View File
@@ -16,22 +16,22 @@ jobs:
matrix: matrix:
cable_driver: ['libreswan', 'wireguard', 'vxlan'] cable_driver: ['libreswan', 'wireguard', 'vxlan']
globalnet: ['', 'globalnet'] globalnet: ['', 'globalnet']
k8s_version: ['1.17'] k8s_version: ['1.23']
lighthouse: ['', 'lighthouse'] lighthouse: ['', 'lighthouse']
include: include:
- k8s_version: '1.18'
- k8s_version: '1.19'
- k8s_version: '1.20' - k8s_version: '1.20'
- k8s_version: '1.21'
- k8s_version: '1.22'
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Run E2E deployment and tests - name: Run E2E deployment and tests
uses: submariner-io/shipyard/gh-actions/e2e@devel uses: submariner-io/shipyard/gh-actions/e2e@release-0.12
with: with:
k8s_version: ${{ matrix.k8s_version }} k8s_version: ${{ matrix.k8s_version }}
using: ${{ matrix.cable_driver }} ${{ matrix.globalnet }} ${{ matrix.lighthouse }} using: ${{ matrix.cable_driver }} ${{ matrix.globalnet }} ${{ matrix.lighthouse }}
- name: Post mortem - name: Post mortem
if: failure() if: failure()
uses: submariner-io/shipyard/gh-actions/post-mortem@devel uses: submariner-io/shipyard/gh-actions/post-mortem@release-0.12
+3 -3
View File
@@ -11,11 +11,11 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Run E2E deployment and tests - name: Run E2E deployment and tests
uses: submariner-io/shipyard/gh-actions/e2e@devel uses: submariner-io/shipyard/gh-actions/e2e@release-0.12
- name: Post mortem - name: Post mortem
if: failure() if: failure()
uses: submariner-io/shipyard/gh-actions/post-mortem@devel uses: submariner-io/shipyard/gh-actions/post-mortem@release-0.12
+3 -3
View File
@@ -19,13 +19,13 @@ jobs:
lighthouse: ['', 'lighthouse'] lighthouse: ['', 'lighthouse']
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Run E2E deployment and tests - name: Run E2E deployment and tests
uses: submariner-io/shipyard/gh-actions/e2e@devel uses: submariner-io/shipyard/gh-actions/e2e@release-0.12
with: with:
using: ${{ matrix.cable_driver }} ${{ matrix.globalnet }} ${{ matrix.lighthouse }} using: ${{ matrix.cable_driver }} ${{ matrix.globalnet }} ${{ matrix.lighthouse }}
- name: Post mortem - name: Post mortem
if: failure() if: failure()
uses: submariner-io/shipyard/gh-actions/post-mortem@devel uses: submariner-io/shipyard/gh-actions/post-mortem@release-0.12
+19 -11
View File
@@ -11,7 +11,7 @@ jobs:
steps: steps:
- name: Get PR commits - name: Get PR commits
id: 'get-pr-commits' id: 'get-pr-commits'
uses: tim-actions/get-pr-commits@55b867b9b28954e6f5c1a0fe2f729dc926c306d0 uses: tim-actions/get-pr-commits@c64db31d359214d244884dd68f971a110b29ab83
with: with:
token: ${{ secrets.GITHUB_TOKEN }} token: ${{ secrets.GITHUB_TOKEN }}
@@ -23,12 +23,20 @@ jobs:
flags: 'i' flags: 'i'
error: 'Commits addressing code review feedback should typically be squashed into the commits under review' error: 'Commits addressing code review feedback should typically be squashed into the commits under review'
- name: 'Verify no "fixup!" commits'
uses: tim-actions/commit-message-checker-with-regex@d6d9770051dd6460679d1cab1dcaa8cffc5c2bbd
with:
commits: ${{ steps.get-pr-commits.outputs.commits }}
pattern: '^(?!fixup!)'
flags: 'i'
error: 'Fixup commits should be squashed into the commits under review'
chart-testing: chart-testing:
name: Helm Chart Linting name: Helm Chart Linting
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Set up Helm - name: Set up Helm
uses: azure/setup-helm@18bc76811624f360dbd7f18c2d4ecb32c7b87bab uses: azure/setup-helm@18bc76811624f360dbd7f18c2d4ecb32c7b87bab
@@ -36,12 +44,12 @@ jobs:
version: v3.6.0 version: v3.6.0
- name: Set up Python - name: Set up Python
uses: actions/setup-python@dc73133d4da04e56a135ae2246682783cc7c7cb6 uses: actions/setup-python@d09bd5e6005b175076f227b13d9730d56e9dcfcb
with: with:
python-version: '3.x' python-version: '3.x'
- name: Set up helm/chart-testing - name: Set up helm/chart-testing
uses: helm/chart-testing-action@5f16c27cf7a4fa9c776ff73734df3909b2b65127 uses: helm/chart-testing-action@dae259e86a35ff09145c0805e2d7dd3f7207064a
- name: Run helm/chart-testing (lint) - name: Run helm/chart-testing (lint)
run: ct lint --config ct.yaml run: ct lint --config ct.yaml
@@ -51,7 +59,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
with: with:
fetch-depth: 0 fetch-depth: 0
- name: Run gitlint - name: Run gitlint
@@ -62,7 +70,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Run helm-docs and verify docs are up-to-date - name: Run helm-docs and verify docs are up-to-date
run: make helm-docs run: make helm-docs
@@ -72,10 +80,10 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Run markdown-link-check - name: Run markdown-link-check
uses: gaurav-nelson/github-action-markdown-link-check@9710f0fec812ce0a3b98bef4c9d842fc1f39d976 uses: gaurav-nelson/github-action-markdown-link-check@228fbf4ffb2a86a65314866e9b2322b519fd885f
with: with:
config-file: ".markdownlinkcheck.json" config-file: ".markdownlinkcheck.json"
check-modified-files-only: "yes" check-modified-files-only: "yes"
@@ -86,7 +94,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Run markdownlint - name: Run markdownlint
run: make markdownlint run: make markdownlint
@@ -95,9 +103,9 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Run yamllint - name: Run yamllint
uses: ibiqlik/action-yamllint@ed2b6e911569708ed121c14b87d513860a7e36a7 uses: ibiqlik/action-yamllint@81e214fd484713882ce4237cb7cd264d550856cf
with: with:
file_or_dir: submariner-k8s-broker/Chart.yaml submariner-k8s-broker/values.yaml submariner-operator/Chart.yaml submariner-operator/values.yaml file_or_dir: submariner-k8s-broker/Chart.yaml submariner-k8s-broker/values.yaml submariner-operator/Chart.yaml submariner-operator/values.yaml
config_file: .yamllint.yml config_file: .yamllint.yml
+3 -3
View File
@@ -12,16 +12,16 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Check out the repository - name: Check out the repository
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
- name: Run markdown-link-check - name: Run markdown-link-check
uses: gaurav-nelson/github-action-markdown-link-check@9710f0fec812ce0a3b98bef4c9d842fc1f39d976 uses: gaurav-nelson/github-action-markdown-link-check@228fbf4ffb2a86a65314866e9b2322b519fd885f
with: with:
config-file: ".markdownlinkcheck.json" config-file: ".markdownlinkcheck.json"
- name: Raise an Issue to report broken links - name: Raise an Issue to report broken links
if: ${{ failure() }} if: ${{ failure() }}
uses: peter-evans/create-issue-from-file@97e6f902a416aac38834e23fa52e166aad0437d2 uses: peter-evans/create-issue-from-file@99b87c35610e986ad2034a7b0518a9b3ebea541b
with: with:
title: Broken link detected by CI title: Broken link detected by CI
content-filepath: .github/ISSUE_TEMPLATE/broken-link.md content-filepath: .github/ISSUE_TEMPLATE/broken-link.md
+2 -2
View File
@@ -4,7 +4,7 @@ name: Release Charts
on: on:
push: push:
branches: branches:
- devel - release-0.12
jobs: jobs:
release: release:
@@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout - name: Checkout
uses: actions/checkout@5a4ac9002d0be2fb38bd78e4b4dbde5606d7042f uses: actions/checkout@2541b1294d2704b0964813337f33b291d3f8596b
with: with:
fetch-depth: 0 fetch-depth: 0
+7
View File
@@ -0,0 +1,7 @@
---
cni: ovn
submariner: true
nodes: control-plane worker worker
clusters:
cluster1:
cluster2:
+7
View File
@@ -0,0 +1,7 @@
---
cni: weave
submariner: true
nodes: control-plane worker
clusters:
cluster1:
cluster2:
+3 -1
View File
@@ -1 +1,3 @@
* @mangelajo @Oats87 @skitt @sridhargaddam @tpantelis # Auto-generated, do not edit; see CODEOWNERS.in
* @Oats87 @skitt @sridhargaddam @tpantelis
*.md @dfarrell07 @Oats87 @skitt @sridhargaddam @tpantelis
+5
View File
@@ -0,0 +1,5 @@
@dfarrell07 *.md
@Oats87 *
@skitt *
@sridhargaddam *
@tpantelis *
+2
View File
@@ -9,6 +9,8 @@ ENV DAPPER_OUTPUT=${DAPPER_SOURCE}/output PATH=${DAPPER_SOURCE}/bin/:${PATH}
WORKDIR ${DAPPER_SOURCE} WORKDIR ${DAPPER_SOURCE}
RUN git config --global --add safe.directory ${DAPPER_SOURCE}
# Override the Helm deployment scripts # Override the Helm deployment scripts
COPY deploy_helm /opt/shipyard/scripts/lib/ COPY deploy_helm /opt/shipyard/scripts/lib/
+4 -5
View File
@@ -1,4 +1,4 @@
BASE_BRANCH ?= devel BASE_BRANCH ?= release-0.12
export BASE_BRANCH export BASE_BRANCH
ifneq (,$(DAPPER_HOST_ARCH)) ifneq (,$(DAPPER_HOST_ARCH))
@@ -9,11 +9,10 @@ PRELOAD_IMAGES := submariner-gateway submariner-operator submariner-route-agent
include $(SHIPYARD_DIR)/Makefile.inc include $(SHIPYARD_DIR)/Makefile.inc
CLUSTER_SETTINGS_FLAG = --cluster_settings $(DAPPER_SOURCE)/cluster_settings
ifneq (,$(filter ovn,$(_using))) ifneq (,$(filter ovn,$(_using)))
CLUSTER_SETTINGS_FLAG = --cluster_settings $(DAPPER_SOURCE)/cluster_settings.ovn CLUSTER_SETTINGS_FLAG = --settings $(DAPPER_SOURCE)/.shipyard.e2e.ovn.yml
else else
CLUSTER_SETTINGS_FLAG = --cluster_settings $(DAPPER_SOURCE)/cluster_settings CLUSTER_SETTINGS_FLAG = --settings $(DAPPER_SOURCE)/.shipyard.e2e.yml
endif endif
override CLUSTERS_ARGS += $(CLUSTER_SETTINGS_FLAG) override CLUSTERS_ARGS += $(CLUSTER_SETTINGS_FLAG)
@@ -21,7 +20,7 @@ override DEPLOY_ARGS += $(CLUSTER_SETTINGS_FLAG) --deploytool helm
export DEPLOY_ARGS export DEPLOY_ARGS
GH_URL=https://submariner-io.github.io/submariner-charts/charts GH_URL=https://submariner-io.github.io/submariner-charts/charts
CHARTS_DIR=charts CHARTS_DIR=charts
CHARTS_VERSION=0.7.0 CHARTS_VERSION=0.10.1
HELM_DOCS_VERSION=0.15.0 HELM_DOCS_VERSION=0.15.0
REPO_URL=$(shell git config remote.origin.url) REPO_URL=$(shell git config remote.origin.url)
-10
View File
@@ -1,10 +0,0 @@
. "${SCRIPTS_DIR}"/lib/source_only
# We need a minimal setup to verify the deployment works
clusters=('cluster1' 'cluster2')
cluster_nodes['cluster1']="control-plane worker"
cluster_nodes['cluster2']="control-plane worker"
cluster_cni=( ['cluster1']="weave" ['cluster2']="weave" )
cluster_subm=( ['cluster1']="true" ['cluster2']="true" )
-10
View File
@@ -1,10 +0,0 @@
. "${SCRIPTS_DIR}"/lib/source_only
# We need a minimal setup to verify the deployment works
clusters=('cluster1' 'cluster2')
cluster_nodes['cluster1']="control-plane worker worker"
cluster_nodes['cluster2']="control-plane worker worker"
cluster_cni=( ['cluster1']="ovn" ['cluster2']="ovn" )
cluster_subm=( ['cluster1']="true" ['cluster2']="true" )
+296 -60
View File
@@ -1,97 +1,333 @@
apiVersion: apiextensions.k8s.io/v1beta1 apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
name: clusters.submariner.io name: clusters.submariner.io
spec: spec:
group: submariner.io group: submariner.io
version: v1
names: names:
kind: Cluster kind: Cluster
listKind: ClusterList
plural: clusters plural: clusters
singular: cluster
scope: Namespaced scope: Namespaced
versions:
- name: v1
schema:
openAPIV3Schema:
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
properties:
cluster_cidr:
items:
type: string
type: array
cluster_id:
type: string
color_codes:
items:
type: string
type: array
global_cidr:
items:
type: string
type: array
service_cidr:
items:
type: string
type: array
required:
- cluster_cidr
- cluster_id
- color_codes
- global_cidr
- service_cidr
type: object
required:
- spec
type: object
served: true
storage: true
status:
acceptedNames:
kind: ""
plural: ""
conditions: []
storedVersions: []
--- ---
apiVersion: apiextensions.k8s.io/v1beta1 apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
name: endpoints.submariner.io name: endpoints.submariner.io
spec: spec:
group: submariner.io group: submariner.io
version: v1
names: names:
kind: Endpoint kind: Endpoint
listKind: EndpointList
plural: endpoints plural: endpoints
singular: endpoint
scope: Namespaced scope: Namespaced
versions:
- name: v1
schema:
openAPIV3Schema:
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
properties:
backend:
type: string
backend_config:
additionalProperties:
type: string
type: object
cable_name:
type: string
cluster_id:
type: string
healthCheckIP:
type: string
hostname:
type: string
nat_enabled:
type: boolean
private_ip:
type: string
public_ip:
type: string
subnets:
items:
type: string
type: array
required:
- backend
- cable_name
- cluster_id
- hostname
- nat_enabled
- private_ip
- public_ip
- subnets
type: object
required:
- spec
type: object
served: true
storage: true
status:
acceptedNames:
kind: ""
plural: ""
conditions: []
storedVersions: []
--- ---
apiVersion: apiextensions.k8s.io/v1beta1 apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
name: gateways.submariner.io name: gateways.submariner.io
spec: spec:
group: submariner.io group: submariner.io
version: v1
names: names:
kind: Gateway kind: Gateway
listKind: GatewayList
plural: gateways plural: gateways
singular: gateway
scope: Namespaced scope: Namespaced
additionalPrinterColumns: versions:
- name: ha-status - additionalPrinterColumns:
- description: High availability status of the Gateway
jsonPath: .status.haStatus
name: HA Status
type: string type: string
description: High Availability Status of the Gateway name: v1
JSONPath: .status.haStatus schema:
---
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: multiclusterservices.lighthouse.submariner.io
spec:
group: lighthouse.submariner.io
version: v1
names:
kind: MultiClusterService
plural: multiclusterservices
singular: multiclusterservice
scope: Namespaced
validation:
openAPIV3Schema: openAPIV3Schema:
properties: properties:
spec: apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
status:
properties: properties:
clusterServiceInfo: connections:
items:
properties: properties:
clusterID: endpoint:
type: "string" properties:
clusterDomain: backend:
type: "string" type: string
serviceIP: backend_config:
type: "string" additionalProperties:
port: type: string
type: "integer" type: object
--- cable_name:
apiVersion: apiextensions.k8s.io/v1beta1 type: string
kind: CustomResourceDefinition cluster_id:
metadata: type: string
name: serviceexports.lighthouse.submariner.io healthCheckIP:
spec: type: string
group: lighthouse.submariner.io hostname:
version: v2alpha1 type: string
names: nat_enabled:
kind: ServiceExport type: boolean
plural: serviceexports private_ip:
singular: serviceexport type: string
scope: Namespaced public_ip:
--- type: string
apiVersion: apiextensions.k8s.io/v1beta1 subnets:
kind: CustomResourceDefinition items:
metadata: type: string
name: serviceimports.lighthouse.submariner.io type: array
spec: required:
group: lighthouse.submariner.io - backend
version: v2alpha1 - cable_name
names: - cluster_id
kind: ServiceImport - hostname
plural: serviceimports - nat_enabled
singular: serviceimport - private_ip
scope: Namespaced - public_ip
- subnets
type: object
latency:
description: LatencySpec describes the round trip time information
in nanoseconds for a packet between the gateway pods of two
clusters.
properties:
averageRTT:
format: int64
type: integer
lastRTT:
description: TODO This shall be deleted once the operator
is using the latest. Using Optional to avoid validation
errors when this field is not used.
format: int64
type: integer
maxRTT:
format: int64
type: integer
minRTT:
format: int64
type: integer
stddevRTT:
format: int64
type: integer
type: object
latencyRTT:
description: LatencySpec describes the round trip time information
for a packet between the gateway pods of two clusters.
properties:
average:
type: string
last:
type: string
max:
type: string
min:
type: string
stdDev:
type: string
type: object
status:
type: string
statusMessage:
type: string
required:
- endpoint
- status
- statusMessage
type: object
type: array
haStatus:
type: string
localEndpoint:
properties:
backend:
type: string
backend_config:
additionalProperties:
type: string
type: object
cable_name:
type: string
cluster_id:
type: string
healthCheckIP:
type: string
hostname:
type: string
nat_enabled:
type: boolean
private_ip:
type: string
public_ip:
type: string
subnets:
items:
type: string
type: array
required:
- backend
- cable_name
- cluster_id
- hostname
- nat_enabled
- private_ip
- public_ip
- subnets
type: object
statusFailure:
type: string
version:
type: string
required:
- connections
- haStatus
- localEndpoint
- statusFailure
- version
type: object
required:
- status
type: object
served: true
storage: true
subresources: {}
status:
acceptedNames:
kind: ""
plural: ""
conditions: []
storedVersions: []
--- ---
apiVersion: apiextensions.k8s.io/v1 apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
+1 -1
View File
@@ -16,7 +16,7 @@ rules:
resources: ["*"] resources: ["*"]
verbs: ["create", "get", "list", "watch", "patch", "update", "delete"] verbs: ["create", "get", "list", "watch", "patch", "update", "delete"]
- apiGroups: ["discovery.k8s.io"] - apiGroups: ["discovery.k8s.io"]
resources: ["endpointslices"] resources: ["endpointslices", "endpointslices/restricted"]
verbs: ["create", "get", "list", "watch","patch", "update", "delete"] verbs: ["create", "get", "list", "watch","patch", "update", "delete"]
- apiGroups: ["multicluster.x-k8s.io"] - apiGroups: ["multicluster.x-k8s.io"]
resources: ["*"] resources: ["*"]
+2 -2
View File
@@ -1,8 +1,8 @@
--- ---
name: submariner-operator name: submariner-operator
version: 0.7.0 version: 0.10.1
apiVersion: v2 apiVersion: v2
appVersion: 0.7.0 appVersion: 0.10.1
description: Submariner enables direct networking between Pods and Services in different Kubernetes clusters description: Submariner enables direct networking between Pods and Services in different Kubernetes clusters
keywords: keywords:
home: https://submariner-io.github.io/ home: https://submariner-io.github.io/
+7 -4
View File
@@ -1,6 +1,6 @@
# submariner-operator # submariner-operator
![Version: 0.7.0](https://img.shields.io/badge/Version-0.7.0-informational?style=flat-square) ![AppVersion: 0.7.0](https://img.shields.io/badge/AppVersion-0.7.0-informational?style=flat-square) ![Version: 0.10.1](https://img.shields.io/badge/Version-0.10.1-informational?style=flat-square) ![AppVersion: 0.10.1](https://img.shields.io/badge/AppVersion-0.10.1-informational?style=flat-square)
Submariner enables direct networking between Pods and Services in different Kubernetes clusters Submariner enables direct networking between Pods and Services in different Kubernetes clusters
@@ -27,8 +27,9 @@ Submariner enables direct networking between Pods and Services in different Kube
| broker.server | string | `"example.k8s.apiserver"` | | | broker.server | string | `"example.k8s.apiserver"` | |
| broker.token | string | `"test"` | | | broker.token | string | `"test"` | |
| gateway.image.repository | string | `"quay.io/submariner/submariner-gateway"` | | | gateway.image.repository | string | `"quay.io/submariner/submariner-gateway"` | |
| gateway.image.tag | string | `"0.7.0"` | | | gateway.image.tag | string | `"0.10.1"` | |
| ipsec.debug | bool | `false` | | | ipsec.debug | bool | `false` | |
| ipsec.forceUDPEncaps | bool | `false` | |
| ipsec.ikePort | int | `500` | | | ipsec.ikePort | int | `500` | |
| ipsec.natPort | int | `4500` | | | ipsec.natPort | int | `4500` | |
| ipsec.psk | string | `""` | | | ipsec.psk | string | `""` | |
@@ -38,7 +39,7 @@ Submariner enables direct networking between Pods and Services in different Kube
| operator.affinity | object | `{}` | | | operator.affinity | object | `{}` | |
| operator.image.pullPolicy | string | `"IfNotPresent"` | | | operator.image.pullPolicy | string | `"IfNotPresent"` | |
| operator.image.repository | string | `"quay.io/submariner/submariner-operator"` | | | operator.image.repository | string | `"quay.io/submariner/submariner-operator"` | |
| operator.image.tag | string | `"0.7.0"` | | | operator.image.tag | string | `"0.10.1"` | |
| operator.resources | object | `{}` | | | operator.resources | object | `{}` | |
| operator.tolerations | list | `[]` | | | operator.tolerations | list | `[]` | |
| rbac.create | bool | `true` | | | rbac.create | bool | `true` | |
@@ -58,10 +59,12 @@ Submariner enables direct networking between Pods and Services in different Kube
| submariner.clusterCidr | string | `""` | | | submariner.clusterCidr | string | `""` | |
| submariner.clusterId | string | `""` | | | submariner.clusterId | string | `""` | |
| submariner.colorCodes | string | `"blue"` | | | submariner.colorCodes | string | `"blue"` | |
| submariner.coreDNSCustomConfig | object | `{}` | |
| submariner.debug | bool | `false` | | | submariner.debug | bool | `false` | |
| submariner.globalCidr | string | `""` | | | submariner.globalCidr | string | `""` | |
| submariner.healthcheckEnabled | bool | `true` | |
| submariner.images.repository | string | `"quay.io/submariner"` | | | submariner.images.repository | string | `"quay.io/submariner"` | |
| submariner.images.tag | string | `"0.7.0"` | | | submariner.images.tag | string | `"0.10.1"` | |
| submariner.natEnabled | bool | `false` | | | submariner.natEnabled | bool | `false` | |
| submariner.serviceCidr | string | `""` | | | submariner.serviceCidr | string | `""` | |
| submariner.serviceDiscovery | bool | `true` | | | submariner.serviceDiscovery | bool | `true` | |
+185 -58
View File
@@ -1,10 +1,11 @@
--- ---
apiVersion: apiextensions.k8s.io/v1beta1 apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
name: submariners.submariner.io
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.3.0 controller-gen.kubebuilder.io/version: v0.4.1
creationTimestamp: null
name: submariners.submariner.io
spec: spec:
group: submariner.io group: submariner.io
names: names:
@@ -13,9 +14,9 @@ spec:
plural: submariners plural: submariners
singular: submariner singular: submariner
scope: Namespaced scope: Namespaced
subresources: versions:
status: {} - name: v1alpha1
validation: schema:
openAPIV3Schema: openAPIV3Schema:
description: Submariner is the Schema for the submariners API description: Submariner is the Schema for the submariners API
properties: properties:
@@ -42,24 +43,51 @@ spec:
type: string type: string
brokerK8sCA: brokerK8sCA:
type: string type: string
brokerK8sInsecure:
type: boolean
brokerK8sRemoteNamespace: brokerK8sRemoteNamespace:
type: string type: string
cableDriver: cableDriver:
type: string type: string
ceIPSecDebug: ceIPSecDebug:
type: boolean type: boolean
ceIPSecForceUDPEncaps:
type: boolean
ceIPSecIKEPort: ceIPSecIKEPort:
type: integer type: integer
ceIPSecNATTPort: ceIPSecNATTPort:
type: integer type: integer
ceIPSecPSK: ceIPSecPSK:
type: string type: string
ceIPSecPreferredServer:
type: boolean
clusterCIDR: clusterCIDR:
type: string type: string
clusterID: clusterID:
type: string type: string
colorCodes: colorCodes:
type: string type: string
connectionHealthCheck:
properties:
enabled:
type: boolean
intervalSeconds:
description: The interval at which health check pings are sent.
format: int64
type: integer
maxPacketLossCount:
description: The maximum number of packets lost at which the health
checker will mark the connection as down.
format: int64
type: integer
type: object
coreDNSCustomConfig:
properties:
configMapName:
type: string
namespace:
type: string
type: object
customDomains: customDomains:
items: items:
type: string type: string
@@ -69,6 +97,12 @@ spec:
type: boolean type: boolean
globalCIDR: globalCIDR:
type: string type: string
imageOverrides:
additionalProperties:
type: string
type: object
loadBalancerEnabled:
type: boolean
namespace: namespace:
type: string type: string
natEnabled: natEnabled:
@@ -105,6 +139,17 @@ spec:
type: string type: string
colorCodes: colorCodes:
type: string type: string
deploymentInfo:
properties:
cloudProvider:
type: string
kubernetesType:
type: string
kubernetesTypeVersion:
type: string
kubernetesVersion:
type: string
type: object
gatewayDaemonSetStatus: gatewayDaemonSetStatus:
properties: properties:
lastResourceVersion: lastResourceVersion:
@@ -114,8 +159,8 @@ spec:
nonReadyContainerStates: nonReadyContainerStates:
items: items:
description: ContainerState holds a possible state of container. description: ContainerState holds a possible state of container.
Only one of its members may be specified. If none of them is Only one of its members may be specified. If none of them
specified, the default one is ContainerStateWaiting. is specified, the default one is ContainerStateWaiting.
properties: properties:
running: running:
description: Details about a running container description: Details about a running container
@@ -141,20 +186,21 @@ spec:
format: date-time format: date-time
type: string type: string
message: message:
description: Message regarding the last termination of description: Message regarding the last termination
the container of the container
type: string type: string
reason: reason:
description: (brief) reason from the last termination description: (brief) reason from the last termination
of the container of the container
type: string type: string
signal: signal:
description: Signal from the last termination of the container description: Signal from the last termination of the
container
format: int32 format: int32
type: integer type: integer
startedAt: startedAt:
description: Time at which previous execution of the container description: Time at which previous execution of the
started container started
format: date-time format: date-time
type: string type: string
required: required:
@@ -164,18 +210,19 @@ spec:
description: Details about a waiting container description: Details about a waiting container
properties: properties:
message: message:
description: Message regarding why the container is not description: Message regarding why the container is
yet running. not yet running.
type: string type: string
reason: reason:
description: (brief) reason the container is not yet running. description: (brief) reason the container is not yet
running.
type: string type: string
type: object type: object
type: object type: object
type: array type: array
status: status:
description: DaemonSetStatus represents the current status of a description: DaemonSetStatus represents the current status of
daemon set. a daemon set.
properties: properties:
collisionCount: collisionCount:
description: Count of hash collisions for the DaemonSet. The description: Count of hash collisions for the DaemonSet. The
@@ -185,11 +232,11 @@ spec:
format: int32 format: int32
type: integer type: integer
conditions: conditions:
description: Represents the latest available observations of description: Represents the latest available observations
a DaemonSet's current state. of a DaemonSet's current state.
items: items:
description: DaemonSetCondition describes the state of a DaemonSet description: DaemonSetCondition describes the state of a
at a certain point. DaemonSet at a certain point.
properties: properties:
lastTransitionTime: lastTransitionTime:
description: Last time the condition transitioned from description: Last time the condition transitioned from
@@ -287,6 +334,10 @@ spec:
cable_name: cable_name:
type: string type: string
cluster_id: cluster_id:
maxLength: 63
minLength: 1
type: string
healthCheckIP:
type: string type: string
hostname: hostname:
type: string type: string
@@ -310,10 +361,30 @@ spec:
- public_ip - public_ip
- subnets - subnets
type: object type: object
latencyRTT:
description: LatencySpec describes the round trip time
information for a packet between the gateway pods of
two clusters.
properties:
average:
type: string
last:
type: string
max:
type: string
min:
type: string
stdDev:
type: string
type: object
status: status:
type: string type: string
statusMessage: statusMessage:
type: string type: string
usingIP:
type: string
usingNAT:
type: boolean
required: required:
- endpoint - endpoint
- status - status
@@ -333,6 +404,10 @@ spec:
cable_name: cable_name:
type: string type: string
cluster_id: cluster_id:
maxLength: 63
minLength: 1
type: string
healthCheckIP:
type: string type: string
hostname: hostname:
type: string type: string
@@ -379,8 +454,8 @@ spec:
nonReadyContainerStates: nonReadyContainerStates:
items: items:
description: ContainerState holds a possible state of container. description: ContainerState holds a possible state of container.
Only one of its members may be specified. If none of them is Only one of its members may be specified. If none of them
specified, the default one is ContainerStateWaiting. is specified, the default one is ContainerStateWaiting.
properties: properties:
running: running:
description: Details about a running container description: Details about a running container
@@ -406,20 +481,21 @@ spec:
format: date-time format: date-time
type: string type: string
message: message:
description: Message regarding the last termination of description: Message regarding the last termination
the container of the container
type: string type: string
reason: reason:
description: (brief) reason from the last termination description: (brief) reason from the last termination
of the container of the container
type: string type: string
signal: signal:
description: Signal from the last termination of the container description: Signal from the last termination of the
container
format: int32 format: int32
type: integer type: integer
startedAt: startedAt:
description: Time at which previous execution of the container description: Time at which previous execution of the
started container started
format: date-time format: date-time
type: string type: string
required: required:
@@ -429,18 +505,19 @@ spec:
description: Details about a waiting container description: Details about a waiting container
properties: properties:
message: message:
description: Message regarding why the container is not description: Message regarding why the container is
yet running. not yet running.
type: string type: string
reason: reason:
description: (brief) reason the container is not yet running. description: (brief) reason the container is not yet
running.
type: string type: string
type: object type: object
type: object type: object
type: array type: array
status: status:
description: DaemonSetStatus represents the current status of a description: DaemonSetStatus represents the current status of
daemon set. a daemon set.
properties: properties:
collisionCount: collisionCount:
description: Count of hash collisions for the DaemonSet. The description: Count of hash collisions for the DaemonSet. The
@@ -450,11 +527,11 @@ spec:
format: int32 format: int32
type: integer type: integer
conditions: conditions:
description: Represents the latest available observations of description: Represents the latest available observations
a DaemonSet's current state. of a DaemonSet's current state.
items: items:
description: DaemonSetCondition describes the state of a DaemonSet description: DaemonSetCondition describes the state of a
at a certain point. DaemonSet at a certain point.
properties: properties:
lastTransitionTime: lastTransitionTime:
description: Last time the condition transitioned from description: Last time the condition transitioned from
@@ -535,8 +612,36 @@ spec:
required: required:
- mismatchedContainerImages - mismatchedContainerImages
type: object type: object
loadBalancerStatus:
properties:
status:
description: LoadBalancerStatus represents the status of a load-balancer.
properties:
ingress:
description: Ingress is a list containing ingress points for
the load-balancer. Traffic intended for the service should
be sent to these ingress points.
items:
description: 'LoadBalancerIngress represents the status
of a load-balancer ingress point: traffic intended for
the service should be sent to an ingress point.'
properties:
hostname:
description: Hostname is set for load-balancer ingress
points that are DNS based (typically AWS load-balancers)
type: string
ip:
description: IP is set for load-balancer ingress points
that are IP based (typically GCE or OpenStack load-balancers)
type: string
type: object
type: array
type: object
type: object
natEnabled: natEnabled:
type: boolean type: boolean
networkPlugin:
type: string
routeAgentDaemonSetStatus: routeAgentDaemonSetStatus:
properties: properties:
lastResourceVersion: lastResourceVersion:
@@ -546,8 +651,8 @@ spec:
nonReadyContainerStates: nonReadyContainerStates:
items: items:
description: ContainerState holds a possible state of container. description: ContainerState holds a possible state of container.
Only one of its members may be specified. If none of them is Only one of its members may be specified. If none of them
specified, the default one is ContainerStateWaiting. is specified, the default one is ContainerStateWaiting.
properties: properties:
running: running:
description: Details about a running container description: Details about a running container
@@ -573,20 +678,21 @@ spec:
format: date-time format: date-time
type: string type: string
message: message:
description: Message regarding the last termination of description: Message regarding the last termination
the container of the container
type: string type: string
reason: reason:
description: (brief) reason from the last termination description: (brief) reason from the last termination
of the container of the container
type: string type: string
signal: signal:
description: Signal from the last termination of the container description: Signal from the last termination of the
container
format: int32 format: int32
type: integer type: integer
startedAt: startedAt:
description: Time at which previous execution of the container description: Time at which previous execution of the
started container started
format: date-time format: date-time
type: string type: string
required: required:
@@ -596,18 +702,19 @@ spec:
description: Details about a waiting container description: Details about a waiting container
properties: properties:
message: message:
description: Message regarding why the container is not description: Message regarding why the container is
yet running. not yet running.
type: string type: string
reason: reason:
description: (brief) reason the container is not yet running. description: (brief) reason the container is not yet
running.
type: string type: string
type: object type: object
type: object type: object
type: array type: array
status: status:
description: DaemonSetStatus represents the current status of a description: DaemonSetStatus represents the current status of
daemon set. a daemon set.
properties: properties:
collisionCount: collisionCount:
description: Count of hash collisions for the DaemonSet. The description: Count of hash collisions for the DaemonSet. The
@@ -617,11 +724,11 @@ spec:
format: int32 format: int32
type: integer type: integer
conditions: conditions:
description: Represents the latest available observations of description: Represents the latest available observations
a DaemonSet's current state. of a DaemonSet's current state.
items: items:
description: DaemonSetCondition describes the state of a DaemonSet description: DaemonSetCondition describes the state of a
at a certain point. DaemonSet at a certain point.
properties: properties:
lastTransitionTime: lastTransitionTime:
description: Last time the condition transitioned from description: Last time the condition transitioned from
@@ -709,11 +816,10 @@ spec:
- natEnabled - natEnabled
type: object type: object
type: object type: object
version: v1alpha1
versions:
- name: v1alpha1
served: true served: true
storage: true storage: true
subresources:
status: {}
status: status:
acceptedNames: acceptedNames:
kind: "" kind: ""
@@ -725,7 +831,7 @@ apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition kind: CustomResourceDefinition
metadata: metadata:
annotations: annotations:
controller-gen.kubebuilder.io/version: v0.3.0 controller-gen.kubebuilder.io/version: v0.4.1
creationTimestamp: null creationTimestamp: null
name: servicediscoveries.submariner.io name: servicediscoveries.submariner.io
spec: spec:
@@ -763,10 +869,19 @@ spec:
type: string type: string
brokerK8sCA: brokerK8sCA:
type: string type: string
brokerK8sInsecure:
type: boolean
brokerK8sRemoteNamespace: brokerK8sRemoteNamespace:
type: string type: string
clusterID: clusterID:
type: string type: string
coreDNSCustomConfig:
properties:
configMapName:
type: string
namespace:
type: string
type: object
customDomains: customDomains:
items: items:
type: string type: string
@@ -797,6 +912,18 @@ spec:
type: object type: object
status: status:
description: ServiceDiscoveryStatus defines the observed state of ServiceDiscovery description: ServiceDiscoveryStatus defines the observed state of ServiceDiscovery
properties:
deploymentInfo:
properties:
cloudProvider:
type: string
kubernetesType:
type: string
kubernetesTypeVersion:
type: string
kubernetesVersion:
type: string
type: object
type: object type: object
type: object type: object
served: true served: true
+8 -2
View File
@@ -13,7 +13,7 @@ questions:
type: string type: string
label: Submariner Operator Image Repository label: Submariner Operator Image Repository
- variable: operator.image.tag - variable: operator.image.tag
default: "0.7.0" default: "0.10.1"
description: "Submariner Operator Image Tag" description: "Submariner Operator Image Tag"
type: string type: string
label: Submariner Operator Image Tag label: Submariner Operator Image Tag
@@ -31,7 +31,7 @@ questions:
type: string type: string
label: Submariner Repository label: Submariner Repository
- variable: submariner.images.tag - variable: submariner.images.tag
default: "0.7.0" default: "0.10.1"
description: "Submariner Images Tag (shared for all non-operator images)" description: "Submariner Images Tag (shared for all non-operator images)"
type: string type: string
label: Submariner Images Tag label: Submariner Images Tag
@@ -136,3 +136,9 @@ questions:
group: "Advanced Configuration" group: "Advanced Configuration"
description: "Cable driver implementation" description: "Cable driver implementation"
label: "Cable Driver" label: "Cable Driver"
- variable: submariner.healthcheckEnabled
type: boolean
default: true
group: "Advanced Configuration"
description: "Disable Healthcheck"
label: "Healthcheck Disabled"
+59 -1
View File
@@ -439,6 +439,21 @@ rules:
verbs: verbs:
- get - get
- list - list
- apiGroups:
- ""
resources:
- namespaces
verbs:
- get
- list
- watch
- apiGroups:
- monitoring.coreos.com
resources:
- servicemonitors
verbs:
- get
- create
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
@@ -459,6 +474,29 @@ roleRef:
name: {{ template "submariner.fullname" . }} name: {{ template "submariner.fullname" . }}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
name: submariner-metrics-reader
namespace: {{ .Release.Namespace }}
rules:
- apiGroups: [""]
resources: ["pods", "services", "endpoints"]
verbs: ["get", "list", "watch"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: read-submariner-metrics
subjects:
- kind: ServiceAccount
name: prometheus-k8s
namespace: openshift-monitoring
roleRef:
kind: Role
name: submariner-metrics-reader
apiGroup: rbac.authorization.k8s.io
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
name: {{ template "submariner.fullname" . }}:gateway name: {{ template "submariner.fullname" . }}:gateway
@@ -640,14 +678,25 @@ rules:
- "" - ""
resources: resources:
- pods - pods
- services
- namespaces - namespaces
- nodes - nodes
- endpoints
verbs: verbs:
- get - get
- list - list
- watch - watch
- update - update
- apiGroups:
- ""
resources:
- services
verbs:
- create
- get
- list
- watch
- update
- delete
- apiGroups: - apiGroups:
- submariner.io - submariner.io
resources: resources:
@@ -688,6 +737,15 @@ rules:
- get - get
- list - list
- watch - watch
- apiGroups:
- network.openshift.io
resources:
- service/externalips
verbs:
- create
- get
- list
- delete
--- ---
{{- end -}} {{- end -}}
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
@@ -9,7 +9,9 @@ spec:
brokerK8sApiServerToken: {{ .Values.broker.token }} brokerK8sApiServerToken: {{ .Values.broker.token }}
brokerK8sCA: {{ .Values.broker.ca }} brokerK8sCA: {{ .Values.broker.ca }}
brokerK8sRemoteNamespace: {{ .Values.broker.namespace }} brokerK8sRemoteNamespace: {{ .Values.broker.namespace }}
brokerK8sInsecure: {{ .Values.broker.insecure }}
ceIPSecDebug: {{ .Values.ipsec.debug }} ceIPSecDebug: {{ .Values.ipsec.debug }}
ceIPSecForceUDPEncaps: {{ .Values.ipsec.forceUDPEncaps }}
ceIPSecIKEPort: {{ .Values.ipsec.ikePort }} ceIPSecIKEPort: {{ .Values.ipsec.ikePort }}
ceIPSecNATTPort: {{ .Values.ipsec.natPort }} ceIPSecNATTPort: {{ .Values.ipsec.natPort }}
ceIPSecPSK: {{ .Values.ipsec.psk }} ceIPSecPSK: {{ .Values.ipsec.psk }}
@@ -25,3 +27,12 @@ spec:
globalCIDR: "{{ .Values.submariner.globalCidr }}" globalCIDR: "{{ .Values.submariner.globalCidr }}"
serviceDiscoveryEnabled: {{ .Values.submariner.serviceDiscovery }} serviceDiscoveryEnabled: {{ .Values.submariner.serviceDiscovery }}
cableDriver: {{ .Values.submariner.cableDriver }} cableDriver: {{ .Values.submariner.cableDriver }}
connectionHealthCheck:
enabled: {{ .Values.submariner.healthcheckEnabled }}
intervalSeconds: 1
maxPacketLossCount: 5
{{- with .Values.submariner.coreDNSCustomConfig }}
coreDNSCustomConfig:
configmapName: {{ .configmapName }}
namespace: {{ .namespace }}
{{- end }}
+6 -3
View File
@@ -10,9 +10,11 @@ submariner:
debug: false debug: false
serviceDiscovery: true serviceDiscovery: true
cableDriver: "libreswan" cableDriver: "libreswan"
healthcheckEnabled: true
coreDNSCustomConfig: {}
images: images:
repository: quay.io/submariner repository: quay.io/submariner
tag: "0.7.0" tag: "0.10.1"
broker: broker:
server: example.k8s.apiserver server: example.k8s.apiserver
token: test token: test
@@ -25,6 +27,7 @@ rbac:
ipsec: ipsec:
psk: "" psk: ""
debug: false debug: false
forceUDPEncaps: false
ikePort: 500 ikePort: 500
natPort: 4500 natPort: 4500
leadership: leadership:
@@ -34,7 +37,7 @@ leadership:
operator: operator:
image: image:
repository: quay.io/submariner/submariner-operator repository: quay.io/submariner/submariner-operator
tag: "0.7.0" tag: "0.10.1"
pullPolicy: IfNotPresent pullPolicy: IfNotPresent
resources: {} resources: {}
tolerations: [] tolerations: []
@@ -42,7 +45,7 @@ operator:
gateway: gateway:
image: image:
repository: quay.io/submariner/submariner-gateway repository: quay.io/submariner/submariner-gateway
tag: "0.7.0" tag: "0.10.1"
serviceAccounts: serviceAccounts:
operator: operator:
create: true create: true