Updated some slack rules to match actual practice. (#8203)

* Updated some slack rules to match actual practice.

Signed-off-by: Josh Berkus <josh@agliodbs.com>

* Update communication/slack-guidelines.md

Co-authored-by: Sean McGinnis <sean.mcginnis@gmail.com>

* A couple more spelling/grammar corrections.

Signed-off-by: Josh Berkus <josh@agliodbs.com>

---------

Signed-off-by: Josh Berkus <josh@agliodbs.com>
Co-authored-by: Sean McGinnis <sean.mcginnis@gmail.com>
This commit is contained in:
Josh Berkus 2024-12-09 17:36:02 -08:00 committed by GitHub
parent 7320df8e42
commit 5ed4178ced
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 74 additions and 30 deletions

View File

@ -29,8 +29,19 @@ body:
label: Name of Requested Resource
validations:
required: false
- type: input
attributes:
label: Is this request supported by an existing Kubernetes group (SIG, WG, Team, Subproject)? If so, please name them here, and tag a SIG lead who can verify
the request.
validations:
required: false
- type: textarea
attributes:
label: Description of Request
validations:
required: false
required: false
- type: textarea
attributes:
label: Justification for Request
validations:
required: false

View File

@ -40,24 +40,46 @@ administrators have time. There is no explicit interval.
[Slack Archive Download]
### DM (Direct Message) Conversations
### Slack Usage Rules
Please do not engage in proprietary company specific conversations in the
Kubernetes Slack instance. This workspace is meant for conversations related to
Kubernetes open source topics and community. Proprietary conversations should
occur in your company Slack and/or communication platforms. As with all
communication, please be mindful of appropriateness, professionalism, and
applicability to the Kubernetes community.
In addition to the [Code of Conduct][coc], users of Kubernetes Slack must adhere to
the following behavior rules. Failure to follow them may result in warnings,
removal of posts, escalating to temporary or permanent deactivation of the user
account.
* **Adhere to Channel Topics**: for the most part, try to stick to the declared
topic of the channel you're in.
* **No Spam**: you may not post commercial, promotional messages anywhere in
Kubernetes, whether in public channels or direct messages, except for very
specific types of messages in specific channels were it is allowed.
* **No Unsolicited DMs**: do not send any user uninvited direct messages (DMs).
* **Don't Discuss Company Business**: Proprietary conversations should
occur in your company Slack and/or communication platforms.
* **No Surveys**: surveys, focus groups, free trials, and similar calls for
participation are considered spam and are prohibited. Exceptions: an official
Kubernetes community survey can be posted anywhere, and any survey may be
posted to the Surveys channel.
* **Jobs and Resumes** belong on the `#kubernetes-careers` channel and should not
be posted elsewhere.
* **Events** may only be posted to channels where that specific event is
applicable, except for the `#events` channel. Generally, this only includes
nonprofit community events.
### Specific Channel Rules
Some channels have specific rules or guidelines. If they do, they will be listed
in the purpose or pinned docs of that channel.
in the purpose or pinned docs of that channel. A few channels worth mentioning
include:
- `#kubernetes-contributors` - Questions and discourse around upstream
contributions and development to kubernetes.
- `#events` - announcements around any Kubernetes ecosystem related events.
- `#kubernetes-new-contributors` - Questions and discourse around getting
started contributing to Kubernetes.
- `kubernetes-org-members` - Discussion by and for organization members and
established contributors.
- `#kubernetes-careers` - Job openings for positions working with/on/around
Kubernetes. Postings must include:
Kubernetes. These must be postings for specific jobs, not "cattle calls"
for general tech hiring. You may also post resumes if you are looking
to be hired. Job postings must include:
- A link to the posting or job description.
- The business name that will employ the Kubernetes hire.
- The location of the role or if remote is OK.
@ -89,7 +111,7 @@ issue can be documented, please take a screenshot to include in your message.
Send a DM to another [listed admin][admins] and describe the situation. If it's
a [code of conduct][coc] issue, please send an email to <conduct@kubernetes.io>
and describe the situation.
and describe the situation.
## Should you have a channel on the Kubernetes Slack?
@ -99,9 +121,9 @@ strong ecosystem of channels for related things. Here are some guidelines for
determining if you should request a channel:
- The channel MUST be Kubernetes related in some way.
- Related cloud native projects might be more appropriate on the
- Related cloud native projects might be more appropriate on the
[CNCF Slack].
- The project MUST be open source.
- If requesting a project channel, the project MUST be open source.
- Open Source a project BEFORE requesting a channel. We cannot accommodate
every organization's open sourcing launch plans.
- The purpose of Slack is to organize an existing community, not seed new
@ -114,10 +136,10 @@ determining if you should request a channel:
- Requesting a channel means maintaining it on behalf of the project
filing the issue. You will be expected to participate and foster a
healthy discourse.
- External projects (ones not owned by a Kubernetes SIG) may have a
- External projects (ones not owned by a Kubernetes SIG) may have a
maximum of two channels, usually `#project` or `#project-users`,
and `#project-dev`.
- A second channel for a specific project will not be approved until the
- A second channel for a specific project will not be approved until the
first channel demonstrates significant traffic.
- Channels around commercial services built on OSS projects are allowed.
- Users love the value of being able to collaborate around various
@ -128,10 +150,21 @@ determining if you should request a channel:
heavily restrict private channels.
- If you need private discussion areas for security-sensitive topics, a
project-specific Slack or the [CNCF Slack] may be a better fit.
- Ask in `#slack-admins` or file an issue if you're unsure It never hurts to
ask.
- Ask in `#slack-admins` or file an issue if you're unsure. We're happy to
discuss it with you.
## Requesting a Channel
### Private Channels
We offer private channels on the Kubernetes Slack extremely sparingly. The only
private channels we currently support involve community-owned software security
or community moderation in some way. Unless supported by a Kubernetes SIG
or the Steering Committee, requests for a private channel will be treated with
skepticism.
Most private channels will be required to include a member of the Slack Admins
team.
### Requesting a Channel
Channels and User Groups are managed by [Tempelis], a tool that enables
external management of Slack.
@ -164,8 +197,8 @@ To add a channel, open a Pull Request (PR) updating the [slack-config].
- Special accommodations will be made where necessary.
After you submit your request the Slack Admins will review and follow-up with
any questions in the PR itself.
There are two approvals needed. `/lgtm` and `/approve`. Once one moderator give the `/lgtm`, a hold will be placed on the PR using `/hold`. This hold will remain in place until one or more moderators reviews
any questions in the PR itself.
There are two approvals needed. `/lgtm` and `/approve`. Once one moderator give the `/lgtm`, a hold will be placed on the PR using `/hold`. This hold will remain in place until one or more moderators reviews
and add the `/approve` command as well as `/hold cancel`, which will remove the hold on the PR.
Once it is signed off and merged, the channel will be created.
@ -208,7 +241,7 @@ To delegate channel ownership - Open a Pull Request (PR) updating the
After you submit your PR and the Slack Admins sign off on the update, it will be
merged and the group will be able to fully self-manage their own channels.
For further information, see the
For further information, see the
[Slack Config Documentation][Channel Documentation].
## Requesting a User Group
@ -219,7 +252,7 @@ external management of Slack.
To add a User Group, open a Pull Request (PR) updating the [slack-config].
- Add the users to users.yaml. **NOTE:** This must be a mapping of their
GitHub ID to their Slack Member ID.
GitHub ID to their Slack Member ID.
- To get a person's Slack Member ID, view their profile. Then click on the
"**...**" and select **Copy member ID**. It will be a 9 character string of
uppercase letters and numbers (example: `U1H63D8SZ`).
@ -233,7 +266,7 @@ After you submit your request, the Slack Admins will review and follow-up with
any questions in the PR itself. Once it is signed off by the members being added
and the Slack Admins, it will be merged, and the User Group will be created.
For further information, see the
For further information, see the
[Slack Config Documentation][Channel Documentation].
## Requesting a Bot, Token, or Webhook
@ -264,7 +297,7 @@ discussed in Slack itself.
### Admin Expectations and Guidelines
Admins should adhere to the general Kubernetes project
Admins should adhere to the general Kubernetes project
[moderation guidelines].
Additionally, admins should ensure they have 2-factor auth enabled for their
@ -299,7 +332,7 @@ bots, tokens or webhooks. Please see the processes outlined below.
#### Processing Channel Requests
Channel requests should be reviewed for their relation and relevance to the
Kubernetes community. Typically channels should be dedicated to SIGs, WGs,
Kubernetes community. Typically channels should be dedicated to SIGs, WGs,
sub-projects, community topics, and other things related to Kubernetes programs
and projects.
@ -307,7 +340,7 @@ For Kubernetes project centric requests, validate them against the
[sig-list], or request a link to a related issue/PR, or mailing
list discussion for the requested Channel.
Small external projects are encouraged to use the channel of the SIG or WG
Small external projects are encouraged to use the channel of the SIG or WG
most relevant to them. Other things such as programming language-specific
channels are discouraged and should in turn be steered to `#kubernetes-client`
or communication avenues commonly used by their specific language.
@ -360,7 +393,7 @@ steps.
For the reasons listed below, admins may inactivate individual Slack accounts.
Due to Slack's framework, it does not allow for an account to be banned or
suspended in the traditional sense, merely inactivated.
suspended in the traditional sense, merely inactivated.
See [Slack's policy on inactivated accounts] for more information.
#### Reasons to inactivate an account
@ -385,7 +418,7 @@ This will open a contextually-aware prompt only available to Slack Admins with
the options to deactivate the user and remove all content from them over the
past "X" minutes/hours.
Report any actions taken to the other slack admins, and if needed the
Report any actions taken to the other slack admins, and if needed the
[Code of Conduct Committee][cocc].
[coc]: /code-of-conduct.md