Skip to content

Commit be1bb47

Browse files
committed
Squashed 'docs/scs-docs/' content from commit 2d736c0
git-subtree-dir: docs/scs-docs git-subtree-split: 2d736c0
0 parents  commit be1bb47

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

53 files changed

+5094
-0
lines changed

Contributor-Docs/README.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
# Community
2+
3+
Entrypoint for getting onboarded.
4+
5+
## Tools used by the community
6+
7+
- Instant messaging
8+
- [Matrix](https://matrix.to/#/!TiDqlLmEUaXqTemaLc:matrix.org?via=matrix.org)
9+
- [Nextcloud Talk](https://scs.sovereignit.de/nextcloud) (Not used)
10+
- [Fosstodon](https://fosstodon.org/@sovereigncloudstack) (Only one-directional)
11+
- Annoucements
12+
- [Mailing-List](https://scs.sovereignit.de/mailman3/postorius/lists/announce.lists.scs.community/)
13+
- [RSS Feed](https://scs.community/feed.xml)
14+
- [Fosstodon](https://fosstodon.org/@sovereigncloudstack)
15+
- [Twitter](https://twitter.com/scs_osballiance)
16+
- [LinkedIn](https://www.linkedin.com/showcase/sovereigncloudstack)
17+
- [Website](https://scs.community)
18+
- Video-Calls
19+
- [Jitsi](https://conf.scs.koeln:8443/SCS-TECH)
20+
- Groupware/Fileshare/Organizational Stuff
21+
- [Nextcloud](https://scs.sovereignit.de/nextcloud)
22+
- [Mailing-List](https://scs.sovereignit.de/mailman3/postorius/lists/announce.lists.scs.community/)
23+
- Task distribution
24+
- [GitHub](https://github.com/SovereignCloudStack)
25+
- [Mailing-List](https://scs.sovereignit.de/mailman3/postorius/lists/announce.lists.scs.community/)
26+
- Guides
27+
- [GitHub](https://github.com/SovereignCloudStack)
28+
- [Contributor Guide](https://scs.community/docs/contributor/)
29+
30+
### ToDo's
31+
32+
Based on the discussion within https://github.com/SovereignCloudStack/Docs/pull/58.
33+
34+
- [ ] establish a Community Board and discuss proposals on a montly basis
35+
- [ ] find a tool (Jekyll framework maybe) to deliver the Docs repo as a website
36+
- [ ] discuss the meaningfullness of an onboarding channel in the desired instant messaging tool
37+
- [ ] Having a single URL for all services?
38+

Contributor-Docs/collaboration.md

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,93 @@
1+
# Collaboration
2+
3+
## Collaborating with issues and pull requests
4+
5+
We use the GitHub flow to track and discuss changes in issues, then propose and
6+
review changes in pull requests. See the
7+
[GitHub documentation](https://docs.github.com/en/free-pro-team@latest/github/collaborating-with-issues-and-pull-requests)
8+
for more details.
9+
10+
## Meetings
11+
12+
### Project updates
13+
14+
- Weekly with all teams on Thursday at 1505 CEST (45 mins)
15+
16+
### Sprint review/Backlog refinement/Sprint planning meetings
17+
18+
- Weekly with Team IaaS on Wednesdays at 1005 CEST (1 hour)
19+
- Weekly with Team Container on Mondays at 1005 CEST (1 hour)
20+
- Weekly with Team OPS & IAM on Thursdays at 1005 CEST (1 hour)
21+
22+
### Special interest groups (SIGs)
23+
24+
- Identity & Access Management (IAM): Bi-Weekly on Friday at 1005 CEST (1 hour)
25+
- Monitoring & Logging: Weekly on Friday at 1205 CEST (1 hour)
26+
27+
## Videoconference
28+
29+
We use a self-hosted [Jitsi Meet](https://jitsi.org) instance for video conferencing.
30+
31+
The server uses an automated deployment based on the
32+
[heat-docker-jitsi-meet](https://github.com/garloff/heat-docker-jitsi-meet) project.
33+
34+
Configuration is such everyone who knows the room can connect, unless the moderator
35+
sets a password/PIN. Opening a new room requires authentication. (Contact Kurt if
36+
you need a password.)
37+
38+
### Usage
39+
40+
Connect with a desktop browser (Chrome/Chromium or other blink based browser
41+
recommended due to superior WebRTC implementation with SimulCast/SVC for VP8/VP9 --
42+
Safari & Firefox work, but cause higher data traffic). For mobile devices use
43+
the Jitsi Meet App.
44+
45+
Use the little arrows in the control bar at the bottom to select speaker, microphone
46+
and camera in case you lack audio/video. Occasionally, you can not hear all but
47+
one participant; in this case reconnecting typically helps.
48+
49+
We have an asterisk connected to some conference rooms to provide dial-in capabilities
50+
for folks that lack internet connectivity (but have a working phone connection).
51+
52+
## Nextcloud
53+
54+
We have a [Nextcloud](https://nextcloud.com)
55+
[instance](https://scs.sovereignit.de) for sharing files, calendar, contacts, ...
56+
setup for things that are not public.
57+
58+
We are also using it for our taskboards currently, though we are looking at
59+
options to do this in the open.
60+
61+
If you want to contribute, we'll do an onboarding call and add you to nextcloud.
62+
This will also add you to the [email protected] mailing list.
63+
64+
We have an announcements mailing list there [email protected] and you
65+
can subscribe via the [mailman3 frontend](https://scs.sovereignit.de/mailman3/postorius/lists/)
66+
67+
## Zuul CI/CD pipelines and project gating
68+
69+
Since we are expecting a lot of pipelines beeing created and used GitHub actions won't keep up
70+
well. We also expect cross-repository and even cross-project dependencies. Therefore we decided to
71+
use Zuul as our main pipeline solution.
72+
73+
### How to make a repo use Zuul
74+
75+
- Make Zuul aware of your repository in this repo: https://github.com/SovereignCloudStack/zuul_deployment
76+
- Create a file *.zuul.yaml*
77+
- An example can be found here: https://github.com/SovereignCloudStack/zuul-sandbox/blob/main/.zuul.yaml
78+
- You can have a job section containing *self-defined* jobs which you need to write on your own
79+
- You have to have a project section containing
80+
- the default-branch name
81+
- the merge-mode which should be used to auto-merge
82+
- the jobs to run in each pipeline (gh_check, gh_gate, gh_post, gh_tag)
83+
- these pipelines are triggered by events which can be looked up here: https://github.com/SovereignCloudStack/zuul_config/blob/main/zuul.d/gh_pipelines.yaml
84+
- some default jobs can be found here: https://opendev.org/zuul/zuul-jobs/src/branch/master/playbooks
85+
- If you have *self-defined* jobs, you need to create a folder *.playbooks*
86+
- this folder containers ansible playbooks which will be triggered
87+
88+
89+
### General information about Zuul
90+
91+
Zuul does not take anything for granted. If you need to have something installed,
92+
you should install it via ansible. Our test-machines are basically pimped
93+
docker-containers, so we might run into issues some time. But for now, things work pretty good.

Contributor-Docs/dco-and-licenses.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# Developer Certificate of Origin + Licenses
2+
3+
The Developer Certificate of Origin (DCO) is a lightweight way for contributors
4+
to certify that they wrote or otherwise have the right to submit the code they
5+
are contributing to the Sovereign Cloud Stack.
6+
7+
```
8+
By making a contribution to this project, I certify that:
9+
10+
(a) The contribution was created in whole or in part by me and I
11+
have the right to submit it under the open source license
12+
indicated in the file; or
13+
14+
(b) The contribution is based upon previous work that, to the best
15+
of my knowledge, is covered under an appropriate open source
16+
license and I have the right under that license to submit that
17+
work with modifications, whether created in whole or in part
18+
by me, under the same open source license (unless I am
19+
permitted to submit under a different license), as indicated
20+
in the file; or
21+
22+
(c) The contribution was provided directly to me by some other
23+
person who certified (a), (b) or (c) and I have not modified
24+
it.
25+
26+
(d) I understand and agree that this project and the contribution
27+
are public and that a record of the contribution (including all
28+
personal information I submit with it, including my sign-off) is
29+
maintained indefinitely and may be redistributed consistent with
30+
this project or the open source license(s) involved.
31+
```
32+
33+
All contributions to the Sovereign Cloud Stack are licensed under the
34+
(OSI approved) open source license of the upstream project being used therein
35+
(very often this is the [Apache Software License v2](https://www.apache.org/licenses/LICENSE-2.0)).
36+
37+
Where we create independent code, we prefer to use the [GNU Affero General Public License 3](https://www.gnu.org/licenses/agpl-3.0.html),
38+
except for interface code which we would put under LGPL-3 (weak copyleft).
39+
Own documentation content is licensed under [Creative Commons BY-SA 4.0](https://creativecommons.org/licenses/by-sa/4.0/).
40+
41+
Contributors sign-off that they adhere to these requirements by adding a `Signed-off-by`
42+
line to commit messages.
43+
44+
```
45+
My fancy commit message
46+
47+
Signed-off-by: Christian Berendt <[email protected]>
48+
```
49+
50+
Git has a `-s` command line option to append this automatically to your commit message:
51+
52+
```
53+
git commit -s -m 'My fancy commit message'
54+
```
55+
56+
The status of a pull request is set to failed if commits do not contain a valid `Signed-off-by` line.
57+
58+
![Failed DCO in GitHub](github-failed-dco.png)
59+
60+
Considerations behind the choice of AGPLv3, CC-BY-SA and the usage of the DCO can be found [here](license-considerations.md).
61+
62+
## Further reading
63+
64+
- <https://developercertificate.org/>
65+
- <https://julien.ponge.org/blog/developer-certificate-of-origin-versus-contributor-license-agreements/>
66+
- <https://lwn.net/Articles/592503/>
205 KB
Loading

0 commit comments

Comments
 (0)