You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+43-4Lines changed: 43 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,12 @@
9
9
10
10
## Contributor Guidelines and Governance
11
11
12
-
Please see [CONTRIBUTING](https://github.com/spiffe/spiffe/blob/main/CONTRIBUTING.md) and [GOVERNANCE](https://github.com/spiffe/spiffe/blob/main/GOVERNANCE.md) from the SPIFFE project.
12
+
Please see [CONTRIBUTING](https://github.com/spiffe/spiffe/blob/main/CONTRIBUTING.md) and [GOVERNANCE](https://github.com/spiffe/spiffe/blob/main/GOVERNANCE.md) from the SPIFFE project for community guidelines.
13
+
14
+
> [!IMPORTANT]
15
+
> Before opening a new issue, search for any existing issues [here](https://github.com/spiffe/tornjak/issues) to avoid duplication.
16
+
17
+
If you're new to this project, we recommend you join us on [Slack](https://spiffe.slack.com/archives/C024JTTK58T) for discussion of potential new features.
13
18
14
19
## Pre-built images
15
20
@@ -26,20 +31,54 @@ In order to build, we require the following installations:
26
31
27
32
## Building Executables and Images
28
33
29
-
Building Tornjak manually can be done with the Makefile. Notable make targets follow:
34
+
Building Tornjak manually can be done with the Makefile. Below is a list of local executable builds:
30
35
-`make bin/tornjak-backend`: makes the Go executable of the Tornjak backend
31
36
-`make bin/tornjak-manager`: makes the Go executable of the Tornjak manager
32
37
-`make frontend-local-build`: makes the optimized ReactJS app locally for the Tornjak frontend. Uses environment variable configuration as in tornjak-frontend/.env
38
+
39
+
And below is a list of container image builds:
33
40
-`make image-tornjak-backend`: containerizes Go executable of the Tornjak backend
34
41
-`make image-tornjak-manager`:containerizes Go executable of the Tornjak manager
35
42
-`make image-tornjak-frontend`: containerizes React JS app for the Tornjak frontend
36
-
-`make image-tornjak`: containerizes Tornjak backend with Tornjak frontend
37
43
38
44
For usage instructions of the containers, please see our [USAGE document](./USAGE.md) to get started.
39
45
40
46
## Development
41
47
42
-
We welcome all development attempst and contributions from the community. The easiest place to start is by reviewing our code architecture diagrams available in our [api documentation](./docs/tornjak-ui-api-documentation.md#11-overview).
48
+
We welcome all development attempts and contributions from the community. The easiest place to start is by reviewing our code architecture diagrams available in our [api documentation](./docs/tornjak-ui-api-documentation.md#11-overview).
49
+
50
+
## Opening a pull request
51
+
52
+
1. Fork the tornjak repo
53
+
2. Ensure your branch is based on the latest commit in `dev`
54
+
3. Commit changes to your fork. Make sure your commit messages contain a `Signed-off-by: <your-email-address>` line (see `git-commit --signoff`) to certify the [DCO](/DCO)
55
+
4. Test your PR locally and ensure all tests in Github actions pass
56
+
5. Open a [pull request](https://help.github.com/articles/creating-a-pull-request-from-a-fork/)
57
+
against the upstream `dev` branch
58
+
59
+
> [!IMPORTANT]
60
+
> Please make sure you open all PRs against the `dev` branch
61
+
62
+
> [!IMPORTANT]
63
+
> For any new feature design, or feature level changes, please create an issue first, then submit a PR with design details before code implementation.
64
+
65
+
## After your pull request is submitted
66
+
67
+
At least one maintainer must approve the pull request.
68
+
69
+
Once your pull request is submitted, it's your responsibility to:
70
+
71
+
* Respond to reviewer's feedback
72
+
* Keep it merge-ready at all times until it has been approved and actually merged
73
+
74
+
Following approval, the pull request will be merged by the last maintainer to approve the request.
75
+
76
+
#### Third-party code
77
+
78
+
When third-party code must be included, all licenses must be preserved. This includes modified
Copy file name to clipboardExpand all lines: USAGE.md
+11-24Lines changed: 11 additions & 24 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,14 +1,14 @@
1
1
# Usage
2
2
3
-
We publish four container images currently:
3
+
We publish and support three container images currently:
4
4
-[Tornjak Backend](https://github.com/spiffe/tornjak/pkgs/container/tornjak-backend): This image can be deployed as a sidecar with any SPIRE server.
5
5
-[Tornjak Manager](https://github.com/spiffe/tornjak/pkgs/container/tornjak-manager): A container that runs this image exposes a port to register multiple Tornjak backends and forward typical commands to multiple Tornjak backends from one API.
6
6
-[Tornjak Frontend](https://github.com/spiffe/tornjak/pkgs/container/tornjak-frontend): This image is typically deployed after the Tornjak Backend or Manager are deployed, as it requires a URL to connect directly to the Tornjak backend API.
7
-
-[Tornjak](https://github.com/spiffe/tornjak/pkgs/container/tornjak): This image containing both Tornjak Backend and Frontend components can deployed as a sidecar alongside a SPIRE Server container
8
7
9
-
NOTE: Previously, we had images placing the Tornjak backend and SPIRE server in the same container, but these are currently deprecated. The above is a comprehensive list of images
8
+
> [!NOTE]
9
+
> Previously, we had images placing the Tornjak backend and SPIRE server in the same container, but these are currently deprecated. The above is a comprehensive list of supported images
10
10
11
-
Pre-built images can be found at the above links. To decide which tag to use, typically choose a release from [this page](https://github.com/spiffe/tornjak/releases) and choose the corresponding tag. For example, if you are interested in release `tornjak-1.0.2`, then choose image tag `v1.0.2`.
11
+
Pre-built images can be found at the above links. To decide which tag to use, typically choose a release from [this page](https://github.com/spiffe/tornjak/releases) and choose the corresponding tag. For example, if you are interested in release `v1.7.0`, then choose image tag `v1.7.0`.
12
12
13
13
### Compatibility Table
14
14
@@ -17,11 +17,11 @@ Please see below for compatibility charts of SPIRE server versions with Tornjak:
The above command is an example of how to run the frontend. This creates a UI available at http://localhost:3000 forwarded from container port `8080`. It is listening to a Tornjak manager component available at http://localhost:50000, and knows to run in manager mode with the `REACT_APP_TORNJAK_MANAGER` flag. The last environment variables namely, `REACT_APP_SPIRE_HEALTH_CHECK_ENABLE` is used to enable the SPIRE health check component.
71
73
72
-
## Tornjak
73
-
74
-
This container may be used as an alternative to having a frontend and backend container separately. The backend is configured exactly as the [Tornjak backend] with container arguments, and the frontend is configured exactly as the [Tornjak frontend] with container environment variables.
The above command creates a UI available at `http://localhost:3000` forwarded from container port `8080`. It is listening to the Tornjak backend at `http://localhost:10000`, as given by the `REACT_APP_API_SERVER_URI` value. At the same time, the container is exposing port `10000` for the backend, which reads the SPIRE config and Tornjak config at `<SPIRE CONFIG PATH>` and `<TORNJAK CONFIG PATH>` respectively.
83
-
84
-
NOTE: The value of `REACT_APP_API_SERVER_URI` must be a URI that is separately available to any browser that accesses the frontend. Therefore, in production environments, it is necessary that backend service endpoint be public.
85
-
86
-
87
74
## Further steps
88
75
89
76
It is recommended to try a full deployment of the Tornjak frontend, backend, and SPIRE Server in minikube. Please see our [tutorial document](docs/quickstart/README.md) for step-by-step instructions.
0 commit comments