Skip to content

Commit 79ad754

Browse files
committed
feat: change readme
1 parent fcebb74 commit 79ad754

1 file changed

Lines changed: 82 additions & 12 deletions

File tree

β€ŽREADME.mdβ€Ž

Lines changed: 82 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,29 +11,99 @@
1111
- Custom Resource Definitions (CRDs) that model Cloud Foundry resources (e.g. Organization, Space, Services, Applications, etc.)
1212
- Custom Controllers to provision these resources in a Cloud Foundry deployment based on the users desired state captured in CRDs they create
1313

14-
## Getting Started
14+
## Roadmap
15+
We have a lot of exciting new features and improvements in our backlogs for you to expect and even contribute yourself! We will publish a detailed roadmap soon.
1516

16-
Please check out [community guide](https://pages.github.com/SAP/docs/category/cloudfoundry)
17+
## πŸ“Š Installation
1718

18-
## Contributing
19+
To install this provider in a kubernetes cluster running crossplane, you can use the provider custom resource, replacing the `<version>`placeholder with the current version of this provider (e.g. v0.3.0):
1920

20-
`crossplane-provider-cloudfoundry` is an SAP open-source project and we welcome contributions from the community. If you are interested in contributing, please check out our [CONTRIBUTING.md](CONTRIBUTING.md) guide and [DEVELOPER.md](DEVELOPER.md) guide.
21+
```yaml
22+
apiVersion: pkg.crossplane.io/v1
23+
kind: Provider
24+
metadata:
25+
name: provider-cloudfoundry
26+
spec:
27+
package: ghcr.io/sap/crossplane-provider-cloudfoundry/crossplane/provider-cloudfoundry:<VERSION>
28+
```
2129
22-
## Roadmap
23-
We have a lot of exciting new features and improvements in our backlogs for you to expect and even contribute yourself! We will publish a detailed roadmap soon.
30+
Crossplane will take care to create a deployment for this provider. Once it becomes healthy, you can configure your provider using proper credentials and start orchestrating :rocket:.
31+
32+
## πŸ”¬ Developing
33+
### Initial Setup
34+
The provider comes with some tooling to ease a local setup for development. As initial setup you can follow these steps:
35+
1. Clone the repository
36+
2. Run `make submodules` to initialize the "build" submodule provided by crossplane
37+
3. Run `make dev-debug` to create a kind cluster and install the CRDs
38+
39+
:warning: Please note that you are required to have [kind](https://kind.sigs.k8s.io) and [docker](https://www.docker.com/get-started/) installed on your local machine in order to run dev debug.
40+
41+
Those steps will leave you with a local cluster and your KUBECONFIG being configured to connect to it via e.g. [kubectl](https://kubernetes.io/docs/reference/kubectl/) or [k9s](https://k9scli.io). You can already apply manifests to that cluster at this point.
42+
43+
### Running the Controller
44+
To run the controller locally, you can use the following command:
45+
```bash
46+
make run
47+
```
48+
This will compile your controller as executable and run it locally (outside of your cluster).
49+
It will connect to your cluster using your KUBECONFIG configuration and start watching for resources.
50+
51+
### Cleaning up
52+
For deleting the cluster again, run
53+
```bash
54+
make dev-clean
55+
```
56+
57+
### E2E Tests
58+
The provider comes with a set of end-to-end tests that can be run locally. To run them, you can use the following command:
59+
```bash
60+
make test-acceptance
61+
```
62+
This will spin up a specific kind cluster which runs the provider as docker container in it. The e2e tests will run kubectl commands against that cluster to test the provider's functionality.
63+
64+
Please note that when running multiple times you might want to delete the kind cluster again to avoid conflicts:
65+
```bash
66+
kind delete cluster <cluster-name>
67+
```
68+
69+
#### Required Configuration
70+
In order for the tests to perform successfully some configuration need to be present as environment variables:
71+
72+
**CF_CREDENTIALS**
73+
74+
User credentials for a user that is Cloud Foundry Administrator in the configured environment, structure:
75+
```json
76+
{
77+
"email": "email",
78+
"username": "PuserId",
79+
"password": "mypass"
80+
}
81+
```
82+
83+
**CF_ENVIRONMENT**
84+
85+
Contains the CF server URL, for example:
86+
```
87+
https://api.cf.eu12.hana.ondemand.com
88+
```
89+
90+
## πŸ‘ Support, Feedback, Contributing
91+
92+
If you have a question always feel free to reach out on our official crossplane slack channel:
93+
94+
:rocket: [**#provider-sap-cloudfoundry**](https://crossplane.slack.com/archives/C08NBTJ1J05).
2495

25-
## Feedbacks, Support
96+
This project is open to feature requests/suggestions, bug reports etc. via [GitHub issues](https://github.com/SAP/crossplane-provider-cloudfoundry/issues). Contribution and feedback are encouraged and always welcome.
2697

27-
For feedbacks/features requests/bug reports, please
28-
open an [issue](https://github.com/SAP/crossplane-provider-cloudfoundry/issues).
98+
If you are interested in contributing, please check out our [CONTRIBUTING.md](CONTRIBUTING.md) guide and [DEVELOPER.md](DEVELOPER.md) guide.
2999

30-
## Security / Disclosure
100+
## πŸ”’ Security / Disclosure
31101
If you find any bug that may be a security problem, please follow our instructions at [in our security policy](https://github.com/SAP/crossplane-provider-cloudfoundry/security/policy) on how to report it. Please do not create GitHub issues for security-related doubts or problems.
32102

33-
## Code of Conduct
103+
## πŸ™†β€β™€οΈ Code of Conduct
34104

35105
We as members, contributors, and leaders pledge to make participation in our community a harassment-free experience for everyone. By participating in this project, you agree to abide by its [Code of Conduct](https://github.com/SAP/.github/blob/main/CODE_OF_CONDUCT.md) at all times.
36106

37-
## Licensing
107+
## πŸ“‹ Licensing
38108

39109
Copyright 2024 SAP SE or an SAP affiliate company and crossplane-provider-btp contributors. Please see our [LICENSE](LICENSE) for copyright and license information. Detailed information including third-party components and their licensing/copyright information is available [via the REUSE tool](https://api.reuse.software/info/github.com/SAP/crossplane-provider-btp).

0 commit comments

Comments
Β (0)