Skip to content

EESSI Governance #456

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 31 commits into
base: main
Choose a base branch
from
Draft

EESSI Governance #456

wants to merge 31 commits into from

Conversation

casparvl
Copy link
Collaborator

@casparvl casparvl commented May 7, 2025

To be agreed on by the Steering Committee. I think the most practical is if we keep iterating / wait until every one of us has given an approving review

@casparvl casparvl changed the title Governance EESSI Governance May 7, 2025
@bedroge
Copy link
Collaborator

bedroge commented May 7, 2025

@casparvl I've fixed some typos in casparvl#1 and casparvl#2.

@casparvl
Copy link
Collaborator Author

casparvl commented May 7, 2025

Oh yeah, thanks, merged!


### 5.2 Removing Team Members
<!-- Describe under what conditions someone may be removed (e.g., inactivity, conduct). -->
Teams decide themselves decide the procedure to remove new Team members. As for the procedure of adding Team Members, the procedure to remove Team Members should reflect the sensitivity of the position.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Teams decide themselves decide the procedure to remove new Team members. As for the procedure of adding Team Members, the procedure to remove Team Members should reflect the sensitivity of the position.
Teams themselves decide the procedure to remove Team members. As for the procedure of adding Team Members, the procedure to remove Team Members should reflect the sensitivity of the position.

TODO: This project follows the [Contributor Covenant](https://www.contributor-covenant.org/) Code of Conduct.

## 8. Contribution Agreement
TODO: Should refer to some Contribution Agreement. Is contributing only possible after signing this agremeent? If so, that should be stated here
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Linux projects have a standard approach here which doesn't involve signing a CA

Suggested change
TODO: Should refer to some Contribution Agreement. Is contributing only possible after signing this agremeent? If so, that should be stated here
TODO: Should refer to some Contribution Agreement. Is contributing only possible after signing this agreement? If so, that should be stated here

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hm, that sounds attractive, since it means we don't need a lawyer to draw up something for us :)

casparvl and others added 2 commits June 19, 2025 10:17
carefully hand-crafted ... aehm copiloted ... policies
…SSI softwares stack versions and individual software. Remove some duplicate statements

- EESSI is committed to providing a complete SBOM for all deployed software.
- The SBOM should include versioning, licensing, and dependency information.
- Preferred formats include SPDX or CycloneDX.
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure if we can already meet the latter two points. If not, does it make sense to include them? I don't think so. Or at least we should make clear it's not currently the case, but is a long term goal.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the EESSI Steering Committee via direct message to one of the
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note that I've changed a few "community leaders" into "EESSI Steering Committee". I think when it comes to reporting abuse, it should be very clear to whom that should be reported, and community leaders is extremely vague.

In other places, I feel 'community leaders' is a more appropriate term, e.g. where it comes to stating that community leaders have the right toe remove or edit commits that break the code of conduct - in this context, the community leader would be someone with a maintainer role.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

TODO: change to inidivdual mail addresses + add mail addresses steering committee members in the steering_committee.md.

- Governance: governance/governance.md
- EESSI Policies: governance/policies.md
- Code of Conduct: governance/code_of_conduct.md
- Current Steering Committee: governance/steering_committee.md
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should either set up an auto-redirect for eessi.io/docs/governance to the moved steering_comittee URL, or set up a simple index.md in /governance with bullets that points to the subpages.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Like this?


## 1. Mission
<!-- Describe the project's purpose and the problem it addresses. Include a short mission statement. -->
The EESSI project aims to build a common software stack that is:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Spell out EESSI in full the first time you use it + make it link to EESSI homepage?

Maybe also include logo on top of the page

- Cross-platform (laptop, Cloud VM, HPC Cluster)
- Ready-to-use (served over the internet, just mount-and-go)
- Optimized for a wide range of hardware architectures (CPU, GPU, interconnects)
- Easily extendable
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should clarify what this means? Maybe also "customizable" (cfr. host injections)

Extra bullet for focus on Linux systems/VMs? (no native macOS/Windows)

## 2. Scope
<!-- Define what is within the scope of the project and what is explicitly out of scope. -->
EESSI will focus on creating a repository of software installations (software.eessi.io). This requires:
- code to build and deploy new software into the repository
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs empty line above to fix formatting + capitalize bullet points

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
- code to build and deploy new software into the repository
- Scripts to automate the process of building and deploying additional software installations in `software.eessi.io`


## 2. Scope
<!-- Define what is within the scope of the project and what is explicitly out of scope. -->
EESSI will focus on creating a repository of software installations (software.eessi.io). This requires:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

repository is common technical terminology that usually means "package repository" (like RPMs), but actually means something else for us (CernVM-FS repository), so let's avoid that term (or be explicit), something like:

Suggested change
EESSI will focus on creating a repository of software installations (software.eessi.io). This requires:
EESSI focuses on creating a shared stack of software installations (`software.eessi.io`) that is distributed through a [CernVM-FS](https://cernvm.cern.ch/fs/) repository.
This requires:


System administrators of systems providing EESSI are administrators of systems (such as, but not limited to cloud and HPC systems) that make the EESSI software stack available to their users.

System administrators of systems providing EESSI are responsible for making sure that their system does not put any disproportional load on the public EESSI CernVM-FS infrastructure. Typically, this means that they are responsible for provisioning proper caching for their system, such as a private CernVM-FS Stratum 1, a proxy, and/or a properly sized local cache.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure we can hold sysadmins responsible for anything.

How do they know that by making EESSI available they're agreeing to being responsible for this?

Also, how can they know that they've overloading EESSI's public infra? Will we notify them?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reworded


### 2.8 End-Users

End-Users are individuals that use any of the software provided by the EESSI software stack.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should link to our terms of use here?


The Steering Committee is made up of community members with sustained and recognized contributions over time. Members take part in the Steering Committee as private individuals (i.e. they do not represent their employer(s)).

Members will be removed from the committee if they resign. Furthermore, if a Member is inactive for 6 Months and does not reply to communication from the rest of the Steering Committee, the Member may be voted out by the other Steering Committee members (regular voting rules, as per section 6.3, apply). Finally, a Member may be voted out. In this case, the vote needs to be unanimous between the other Members.
Copy link
Collaborator Author

@casparvl casparvl Jun 19, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
Members will be removed from the committee if they resign. Furthermore, if a Member is inactive for 6 Months and does not reply to communication from the rest of the Steering Committee, the Member may be voted out by the other Steering Committee members (regular voting rules, as per section 6.3, apply). Finally, a Member may be voted out. In this case, the vote needs to be unanimous between the other Members.
Membership of the Steering Committe can terminate in three ways:
- A Member can resign
- A Member may be voted out. In this case, the vote needs to be unanimous between the other Members.
- If a Member is inactive for 6 Months and does not reply to communication from the rest of the Steering Committee, the Member may be voted out by the other Steering Committee members. In this case, regular voting rules, as per section 6.3, apply.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants