opr-paas
An operator providing a multi tenancy solution which allows DevOps teams to request a context for their project, which we like to call a 'Project as a service', e.a. Paas.
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (12.5%) to scientific vocabulary
Keywords
Repository
An operator providing a multi tenancy solution which allows DevOps teams to request a context for their project, which we like to call a 'Project as a service', e.a. Paas.
Basic Info
- Host: GitHub
- Owner: belastingdienst
- License: eupl-1.2
- Language: Go
- Default Branch: main
- Homepage: https://belastingdienst.github.io/opr-paas/
- Size: 33.5 MB
Statistics
- Stars: 41
- Watchers: 2
- Forks: 16
- Open Issues: 16
- Releases: 48
Topics
Metadata Files
README.md
opr-paas
Goal
The Paas operator delivers an opinionated 'Project as a Service' implementation where development teams can request a 'Project as a Service' by defining a Paas resource.
A Paas resource is used by the operator as an input to create namespaces limited by Cluster Resource Quota's, granting groups permissions and (together with a clusterwide ArgoCD) creating capabilities such as:
- a Paas specific deployment of ArgoCD (continuous deployment);
- Tekton (continuous integration);
- Grafana (observability); and
- KeyCloak (Application level Single Sign On);
A Paas is all a team needs to hit the ground running.
Quickstart
Deploy the operator using the following commands:
kubectl apply -f https://github.com/belastingdienst/opr-paas/releases/latest/download/install.yaml
kubectl apply -f https://raw.githubusercontent.com/belastingdienst/opr-paas/refs/heads/main/examples/resources/_v1alpha2_paasconfig.yaml
The second command will load an example PaasConfig resource from the main branch to get you going. Feel free to replace this with your own or a release specific version instead.
This will install the operator using the install.yaml that was generated for the
latest release. It will create:
- a namespace called
paas-system; - 3 CRDs (
Paas,PaasNsandPaasConfig); - a service account, role, role binding, cluster role and cluster role binding for all permissions required by the operator;
- a viewer & an editor cluster role for all crds;
- a deployment running the operator;
Feel free to change config as required.
Background information
Contributing
Please refer to our documentation in the CONTRIBUTING.md file and the Developer Guide section of the documentation site if you want to help us improve the Paas Operator.
License
Copyright 2024, Tax Administration of The Netherlands. Licensed under the EUPL 1.2.
See LICENSE.md for details.
Owner
- Name: Belastingdienst
- Login: belastingdienst
- Kind: organization
- Website: https://www.belastingdienst.nl
- Repositories: 1
- Profile: https://github.com/belastingdienst
Belastingdienst
Citation (CITATION.cff)
cff-version: 1.2.0
title: Project as a Service Operator
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- name: Tax Administration of The Netherlands
website: 'https://www.belastingdienst.nl'
repository-code: 'https://github.com/orgs/belastingdienst/opr-paas/'
url: 'https://github.com/orgs/belastingdienst/opr-paas/'
abstract: >-
The PaaS operator delivers an opiniated 'Project as a
Service' implementation where development teams can
request a 'Project as a Service' by defining a PaaS
resource.
A PaaS resource is used by the operator uses as an input
to create namespaces limited by Cluster Resource Quota's,
granting groups permissions and (together with a
clusterwide ArgoCD) creating capabilities such as a PaaS
specific deployment of ArgoCD (continuous deployment),
Tekton (continuous integration), Grafana (observability),
and KeyCloak (Application level Signle Sign On).
keywords:
- kubernetes
- openshift
- go
- golang
- operator
- paas
- project
- service
license: EUPL-1.2
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 101
- Total pull requests: 700
- Average time to close issues: about 1 month
- Average time to close pull requests: 2 days
- Total issue authors: 11
- Total pull request authors: 16
- Average comments per issue: 0.28
- Average comments per pull request: 0.4
- Merged pull requests: 532
- Bot issues: 1
- Bot pull requests: 172
Past Year
- Issues: 99
- Pull requests: 690
- Average time to close issues: about 1 month
- Average time to close pull requests: 2 days
- Issue authors: 11
- Pull request authors: 16
- Average comments per issue: 0.28
- Average comments per pull request: 0.4
- Merged pull requests: 526
- Bot issues: 1
- Bot pull requests: 172
Top Authors
Issue Authors
- portly-halicore-76 (50)
- devotional-phoenix-97 (23)
- hikarukin (11)
- Koekenbakkers (6)
- AxiomaticFixedChimpanzee (3)
- benoitschipper (2)
- nicorikken (2)
- unarmednucleus (1)
- PatrickDerichs (1)
- jo8s (1)
- dependabot[bot] (1)
Pull Request Authors
- devotional-phoenix-97 (199)
- dependabot[bot] (170)
- portly-halicore-76 (166)
- hikarukin (81)
- AxiomaticFixedChimpanzee (52)
- Koekenbakkers (7)
- Stef16Robbe (7)
- benoitschipper (4)
- taxing4u (3)
- github-actions[bot] (2)
- appiepollo14 (2)
- jo8s (2)
- paradisepalms (2)
- nexus-core174 (1)
- astellingwerf (1)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 3
- Total downloads: unknown
-
Total dependent packages: 0
(may contain duplicates) -
Total dependent repositories: 0
(may contain duplicates) - Total versions: 88
proxy.golang.org: github.com/belastingdienst/opr-paas/v3
- Homepage: https://github.com/belastingdienst/opr-paas
- Documentation: https://pkg.go.dev/github.com/belastingdienst/opr-paas/v3#section-documentation
- License: EUPL-1.2
-
Latest release: v3.7.0
published 6 months ago
Rankings
proxy.golang.org: github.com/belastingdienst/opr-paas/v2
- Homepage: https://github.com/belastingdienst/opr-paas
- Documentation: https://pkg.go.dev/github.com/belastingdienst/opr-paas/v2#section-documentation
- License: EUPL-1.2
-
Latest release: v2.1.0
published 8 months ago
Rankings
proxy.golang.org: github.com/belastingdienst/opr-paas
- Homepage: https://github.com/belastingdienst/opr-paas
- Documentation: https://pkg.go.dev/github.com/belastingdienst/opr-paas#section-documentation
- License: EUPL-1.2
-
Latest release: v1.13.3
published 9 months ago
Rankings
Dependencies
- docker.io/golang 1.22 build
- gcr.io/distroless/static nonroot build
- github.com/beorn7/perks v1.0.1
- github.com/blang/semver/v4 v4.0.0
- github.com/bytedance/sonic v1.12.1
- github.com/bytedance/sonic/loader v0.2.0
- github.com/cespare/xxhash/v2 v2.3.0
- github.com/cloudwego/base64x v0.1.4
- github.com/cloudwego/iasm v0.2.0
- github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc
- github.com/emicklei/go-restful/v3 v3.12.1
- github.com/evanphx/json-patch v5.6.0+incompatible
- github.com/evanphx/json-patch/v5 v5.9.0
- github.com/fsnotify/fsnotify v1.7.0
- github.com/fxamacker/cbor/v2 v2.7.0
- github.com/gabriel-vasile/mimetype v1.4.5
- github.com/gin-contrib/cors v1.7.2
- github.com/gin-contrib/sse v0.1.0
- github.com/gin-gonic/gin v1.10.0
- github.com/go-logr/logr v1.4.2
- github.com/go-logr/zapr v1.3.0
- github.com/go-openapi/jsonpointer v0.21.0
- github.com/go-openapi/jsonreference v0.21.0
- github.com/go-openapi/swag v0.23.0
- github.com/go-playground/locales v0.14.1
- github.com/go-playground/universal-translator v0.18.1
- github.com/go-playground/validator/v10 v10.22.0
- github.com/goccy/go-json v0.10.3
- github.com/gogo/protobuf v1.3.2
- github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da
- github.com/golang/protobuf v1.5.4
- github.com/google/gnostic-models v0.6.8
- github.com/google/go-cmp v0.6.0
- github.com/google/gofuzz v1.2.0
- github.com/google/uuid v1.6.0
- github.com/gorilla/websocket v1.5.0
- github.com/hashicorp/hcl v1.0.0
- github.com/imdario/mergo v0.3.16
- github.com/inconshreveable/mousetrap v1.1.0
- github.com/josharian/intern v1.0.0
- github.com/json-iterator/go v1.1.12
- github.com/klauspost/compress v1.17.9
- github.com/klauspost/cpuid/v2 v2.2.8
- github.com/leodido/go-urn v1.4.0
- github.com/magiconair/properties v1.8.7
- github.com/mailru/easyjson v0.7.7
- github.com/mattn/go-isatty v0.0.20
- github.com/mitchellh/mapstructure v1.5.0
- github.com/moby/spdystream v0.4.0
- github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
- github.com/modern-go/reflect2 v1.0.2
- github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822
- github.com/mxk/go-flowrate v0.0.0-20140419014527-cca7078d478f
- github.com/openshift/api v3.9.1-0.20190916204813-cdbe64fb0c91+incompatible
- github.com/pelletier/go-toml/v2 v2.2.2
- github.com/pkg/errors v0.9.1
- github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2
- github.com/prometheus/client_golang v1.20.4
- github.com/prometheus/client_model v0.6.1
- github.com/prometheus/common v0.55.0
- github.com/prometheus/procfs v0.15.1
- github.com/sagikazarmark/locafero v0.6.0
- github.com/sagikazarmark/slog-shim v0.1.0
- github.com/sirupsen/logrus v1.9.3
- github.com/sourcegraph/conc v0.3.0
- github.com/spf13/afero v1.11.0
- github.com/spf13/cast v1.7.0
- github.com/spf13/cobra v1.8.1
- github.com/spf13/pflag v1.0.5
- github.com/spf13/viper v1.19.0
- github.com/stretchr/testify v1.9.0
- github.com/subosito/gotenv v1.6.0
- github.com/twitchyliquid64/golang-asm v0.15.1
- github.com/ugorji/go/codec v1.2.12
- github.com/vladimirvivien/gexe v0.2.0
- github.com/x448/float16 v0.8.4
- go.uber.org/multierr v1.11.0
- go.uber.org/zap v1.27.0
- golang.org/x/arch v0.9.0
- golang.org/x/crypto v0.27.0
- golang.org/x/exp v0.0.0-20240808152545-0cdaa3abc0fa
- golang.org/x/net v0.28.0
- golang.org/x/oauth2 v0.22.0
- golang.org/x/sys v0.25.0
- golang.org/x/term v0.24.0
- golang.org/x/text v0.18.0
- golang.org/x/time v0.6.0
- gomodules.xyz/jsonpatch/v2 v2.4.0
- google.golang.org/protobuf v1.34.2
- gopkg.in/inf.v0 v0.9.1
- gopkg.in/ini.v1 v1.67.0
- gopkg.in/yaml.v2 v2.4.0
- gopkg.in/yaml.v3 v3.0.1
- k8s.io/api v0.31.0
- k8s.io/apiextensions-apiserver v0.31.0
- k8s.io/apimachinery v0.31.0
- k8s.io/client-go v0.31.0
- k8s.io/component-base v0.31.0
- k8s.io/klog/v2 v2.130.1
- k8s.io/kube-openapi v0.0.0-20240816214639-573285566f34
- k8s.io/utils v0.0.0-20240821151609-f90d01438635
- sigs.k8s.io/controller-runtime v0.19.0
- sigs.k8s.io/e2e-framework v0.4.0
- sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd
- sigs.k8s.io/structured-merge-diff/v4 v4.4.1
- sigs.k8s.io/yaml v1.4.0
- 176 dependencies
- babel *
- colorama *
- jinja2 *
- markdown *
- mkdocs *
- mkdocs-literate-nav *
- mkdocs-material *
- mkdocs-material-extensions *
- mkdocs-redirects *
- paginate *
- pygments *
- pymdown-extensions *
- regex >=2022.4
- requests *
- actions/cache/restore v4 composite
- actions/cache/save v4 composite
- actions/checkout v4 composite
- actions/deploy-pages v4 composite
- actions/setup-python v5 composite
- actions/upload-pages-artifact v3 composite
- CycloneDX/gh-gomod-generate-sbom v2 composite
- actions/checkout v4 composite
- actions/setup-go v5 composite
- goreleaser/goreleaser-action v6 composite
- actions/checkout v4 composite
- aquasecurity/trivy-action 0.20.0 composite
- docker/build-push-action v6 composite
- docker/login-action v3 composite
- docker/metadata-action v5 composite
- docker/setup-buildx-action v3 composite
- docker/setup-qemu-action v3 composite
- softprops/action-gh-release v2 composite
- actions/checkout v4 composite
- softprops/action-gh-release v2 composite
- CycloneDX/gh-gomod-generate-sbom v2 composite
- actions/checkout v4 composite
- mvdkleijn/licenses-action v1 composite
- softprops/action-gh-release v2 composite
- actions/checkout 8410ad0602e1e429cee44a835ae9f77f654a6694 composite
- actions/setup-go 0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 composite
- golangci/golangci-lint-action aaa42aa0628b4ae2578232a66b541047968fac86 composite
- tj-actions/changed-files e9772d140489982e0e3704fea5ee93d536f1e275 composite
- release-drafter/release-drafter v6 composite
- actions/cache/save v4 composite