Giter Club home page Giter Club logo

provider-styra's Introduction

provider-styra

Crossplane provider for Styra DAS. The provider built from this repository can be installed into a Crossplane control plane or run seperately. It provides the following features:

  • Extension of the K8s API with CRDs to represent Styra objects as K8s resources
  • Controllers to provision these resources into a Styra instance
  • Implementations of Crossplane's portable resource abstractions, enabling Styra resources to fulfill a user's general need for cloud services

Getting Started and Documentation

For getting start with Crossplane setup installation and deployment, see the official documentation.

To use provider-styra

  1. Setup a new Styra instance or use an existing one
  2. Create a new Styra API token, and store it in a K8s secret
kubectl create secret generic provider-styra-creds --from-literal=token=$API_TOKEN -n crossplane-system
  1. Create a new ProviderConfig resource with a references to this secret

You are now ready to create resources as described in examples.

Contributing

provider-styra is a community driven project and we welcome contributions. See the Crossplane Contributing guidelines to get started.

Adding New Resource

New resources can be added by defining the required types in apis and the controllers pkg/controllers/.

To generate the CRD YAML files run

make generate

Report a Bug

For filing bugs, suggesting improvements, or requesting new features, please open an issue.

Contact

Please use the following to reach members of the community:

Governance and Owners

provider-styra is run according to the same Governance and Ownership structure as the core Crossplane project.

Code of Conduct

provider-styra adheres to the same Code of Conduct as the core Crossplane project.

Licensing

provider-styra is under the Apache 2.0 license.

Usage

To run the project

make run

To run all tests:

make test

To build the project

make build

To list all available options

make help

See more

Code generation

See CODE_GENERATION.md

provider-styra's People

Contributors

hasheddan avatar janwillies avatar jastang avatar mistermx avatar negz avatar schroeder-paul avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

provider-styra's Issues

GetConfig does not utilize SecretRef.Key

What happened?

GetConfig does not use the SecretRef.Key field in ProviderConfig and always looks up the field token.

How can we reproduce it?

Create a ProviderConfig that references a different field than token and a secret that does not have an entry for token.

Create a System resource that references this config and the reconcile will fail.

What environment did it happen in?

Running build 7301535

Add support for secrets

What problem are you facing?

Some Styra features like datasources require credentials which are uploaded and stored as secrets.

How could Crossplane help solve your problem?

provider-styra should provide a new Secret resource that matches the Styra secret API.

add RoleBinding resource

What problem are you facing?

I want to manage access to systems in a more fine granular way, so that I can grant access only to a single system

How could Crossplane help solve your problem?

implement the rolebinding resource

Add support for datasources

What problem are you facing?

We are using Styra datasources and want to manage them via Crossplane/provider-styra.

How could Crossplane help solve your problem?

provider-styra should provide a new resource DataSource that matches the Styra datasource API

creation of custom system doesn't populate connection secret

What happened?

I tried to create a system with type custom. The system was created correctly at the styra das api, but the connection secret in kubernetes was empty.

I expected to find the api token in there, or the opa conf, so I can register my opa deployment with the styra das system

How can we reproduce it?

create a custom system like this:

apiVersion: styra.crossplane.io/v1alpha1
kind: System
metadata:
  name: custom-system-demo
spec:
  forProvider:
    description: testing custom opa system
    type: custom
  providerConfigRef:
    name: styra-provider
  writeConnectionSecretToRef:
    name: custom-system-demo
    namespace: crossplane-system

What environment did it happen in?

provider-styra version: 7f325a5

Update readme with setup instructions

What problem are you facing?

The readme is currently lacking setup instructions.

How could Crossplane help solve your problem?

Extend readme.md with steps that explain how to setup provider-styra, connect it to a Styra instance and deploy resources.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.