Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
41 changes: 41 additions & 0 deletions .github/ISSUE_TEMPLATE/0_bug.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# edit this in https://github.com/conda-sandbox/infrastructure

name: Bug Report
description: Create a bug report.
labels:
- type::bug
body:
- type: markdown
attributes:
value: |
Because processing new bug reports is time-consuming, we would like to ask you to fill out the following form to the best of your ability and as completely as possible.

> [!NOTE]
> Bug reports that are incomplete or missing information may be closed as inactionable.

Since there are already a lot of open issues, please also take a moment to search existing ones to see if your bug has already been reported. If you find something related, please upvote that issue and provide additional details as necessary.

πŸ’ Thank you for helping to make `conda-sandbox/example` better. We would be unable to improve `conda-sandbox/example` without our community!
- type: checkboxes
id: checks
attributes:
label: Checklist
description: Please confirm and check all of the following options.
options:
- label: I added a descriptive title
required: true
- label: I searched open reports and couldn't find a duplicate
required: true
- type: textarea
id: what
attributes:
label: What happened?
description: What should have happened instead? Please provide as many details as possible. The more information provided, the more likely we are able to replicate your problem and offer a solution.
validations:
required: true

- type: textarea
id: context
attributes:
label: Additional Context
description: Include any additional information (or screenshots) that you think would be valuable.
50 changes: 50 additions & 0 deletions .github/ISSUE_TEMPLATE/1_feature.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
# edit this in https://github.com/conda-sandbox/infrastructure

name: Feature Request
description: Create a feature request.
labels:
- type::feature
body:
- type: markdown
attributes:
value: |
Because processing new feature requests is time-consuming, we would like to ask you to fill out the following form to the best of your ability and as completely as possible.

> [!NOTE]
> Feature requests that are incomplete or missing information may be closed as inactionable.

Since there are already a lot of open issues, please also take a moment to search existing ones to see if your feature request has already been submitted. If you find something related, please upvote that issue and provide additional details as necessary.

πŸ’ Thank you for helping to make `conda-sandbox/example` better. We would be unable to improve `conda-sandbox/example` without our community!
- type: checkboxes
id: checks
attributes:
label: Checklist
description: Please confirm and check all of the following options.
options:
- label: I added a descriptive title
required: true
- label: I searched open requests and couldn't find a duplicate
required: true
- type: textarea
id: idea
attributes:
label: What is the idea?
description: Describe what the feature is and the desired state.
validations:
required: true
- type: textarea
id: why
attributes:
label: Why is this needed?
description: Who would benefit from this feature? Why would this add value to them? What problem does this solve?
- type: textarea
id: what
attributes:
label: What should happen?
description: What should be the user experience with the feature? Describe from a user perspective what they would do and see.
- type: textarea
id: context
attributes:
label: Additional Context
description: Include any additional information that you think would be valuable.
38 changes: 38 additions & 0 deletions .github/ISSUE_TEMPLATE/2_documentation.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# edit this in https://github.com/conda-sandbox/infrastructure

name: Documentation
description: Create a documentation related issue.
labels:
- type::documentation
body:
- type: markdown
attributes:
value: |
> [!NOTE]
> Documentation requests that are incomplete or missing information may be closed as inactionable.

Since there are already a lot of open issues, please also take a moment to search existing ones to see if your bug has already been reported. If you find something related, please upvote that issue and provide additional details as necessary.

πŸ’ Thank you for helping to make conda better. We would be unable to improve conda without our community!
- type: checkboxes
id: checks
attributes:
label: Checklist
description: Please confirm and check all of the following options.
options:
- label: I added a descriptive title
required: true
- label: I searched open reports and couldn't find a duplicate
required: true
- type: textarea
id: what
attributes:
label: What happened?
description: Mention here any typos, broken links, or missing, incomplete, or outdated information, etc. that you have noticed in the conda docs or CLI help.
validations:
required: true
- type: textarea
id: context
attributes:
label: Additional Context
description: Include any additional information (or screenshots) that you think would be valuable.
108 changes: 108 additions & 0 deletions .github/ISSUE_TEMPLATE/epic.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,108 @@
# edit this in https://github.com/conda-sandbox/infrastructure

name: Epic
description: A collection of related tickets.
labels:
- epic
body:
- type: markdown
attributes:
value: |
This form is intended for grouping and collecting together related tickets to better gauge the scope of a problem/feature.

If you are attempting to report a bug, propose a new feature, or some other code change please use one of the other forms available.

> [!NOTE]
> Epics that are incomplete or missing information may be closed as inactionable.

Since there are already a lot of open issues, please also take a moment to search existing ones to see if a similar epic has already been opened. If you find something related, please upvote that issue and provide additional details as necessary.

πŸ’ Thank you for helping to make `conda-sandbox/example` better. We would be unable to improve `conda-sandbox/example` without our community!

- type: checkboxes
id: checks
attributes:
label: Checklist
description: Please confirm and check all of the following options.
options:
- label: I added a descriptive title
required: true
- label: I searched open issues and couldn't find a duplicate
required: true

- type: textarea
id: what
attributes:
label: What?
description: >-
What feature or problem will be addressed in this epic?
placeholder: Please describe here.
validations:
required: true

- type: textarea
id: why
attributes:
label: Why?
description: >-
Why is the reported issue(s) a problem, or why is the proposed feature needed?
(Research and spike issues can be linked here.)
value: |
- [ ] <supporting issue from user, research, or spike>
placeholder: Please describe here and/or link to relevant supporting issues.
validations:
required: true

- type: textarea
id: user_impact
attributes:
label: User impact
description: >-
In what specific way(s) will users benefit from this change? (e.g. use cases or performance improvements)
placeholder: Please describe here.
validations:
required: true

- type: textarea
id: goals
attributes:
label: Goals
description: >-
What goal(s) should this epic accomplish?
value: |
- [ ] <goal>
validations:
required: true

- type: textarea
id: tasks
attributes:
label: Tasks
description: >-
What needs to be done to implement this change?
value: |
- [ ] <task or PR>
validations:
required: false

- type: textarea
id: blocked_by
attributes:
label: 'This epic is blocked by:'
description: >-
Epics and issues that block this epic.
value: |
- [ ] <dependency epic or issue>
validations:
required: false

- type: textarea
id: blocks
attributes:
label: 'This epic blocks:'
description: >-
Epics and issues that are blocked by this epic.
value: |
- [ ] <dependency epic or issue>
validations:
required: false
22 changes: 22 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
<!-- Hello! Thanks for submitting a PR! To help make things go a bit more
smoothly, we would appreciate it if you follow this template. -->

### Description

<!-- Good things to put here include:
- reasons for the change (please link any relevant issues!),
- any noteworthy (or hacky) choices to be aware of,
- or what the problem resolved here looked like. -->



<!-- Just as a reminder, everyone in all conda org spaces (including PRs)
must follow the Conda Org Code of Conduct (link below).

Finally, once again, thanks for your time and effort. If you have any
feedback in regards to your experience contributing here, please
let us know!

Helpful links:
- Conda Org COC: https://github.com/conda-sandbox/example/blob/main/CODE_OF_CONDUCT.md
- Contributing docs: https://github.com/conda-sandbox/example/blob/main/CONTRIBUTING.md -->
35 changes: 35 additions & 0 deletions .github/workflows/cla.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: CLA

on:
issue_comment:
types:
- created
pull_request_target:

jobs:
check:
if: >-
!github.event.repository.fork
&& (
github.event.issue.pull_request
&& github.event.comment.body == '@conda-bot check'
|| github.event_name == 'pull_request_target'
)
runs-on: ubuntu-latest
steps:
- name: Check CLA
uses: conda/actions/check-cla@f05161c6e6e37a49b17c8e0b436197b53830318a # v25.9.2
with:
# [required]
# A token with ability to comment, label, and modify the commit status
# (`pull_request: write` and `statuses: write` for fine-grained PAT; `repo` for classic PAT)
# (default: secrets.GITHUB_TOKEN)
token: ${{ secrets.CLA_ACTION_TOKEN }}
# [required]
# Label to apply to contributor's PR once CLA is signed
label: cla-signed

# [required]
# Token for opening signee PR in the provided `cla_repo`
# (`pull_request: write` for fine-grained PAT; `repo` and `workflow` for classic PAT)
cla_token: ${{ secrets.CLA_FORK_TOKEN }}
35 changes: 35 additions & 0 deletions .github/workflows/issues.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Automate Issues

on:
# NOTE: github.event is issue_comment payload:
# https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#issue_comment
issue_comment:
types: [created]

env:
FEEDBACK_LBL: pending::feedback
SUPPORT_LBL: pending::support

jobs:
# NOTE: will update label if anyone responds, not just the author/reporter
# TODO: create conda-issue-sorting team and modify this to toggle label based on
# whether a non-issue-sorting engineer commented
pending_support:
# if [pending::feedback] and anyone responds
if: >-
!github.event.repository.fork
&& !github.event.issue.pull_request
&& contains(github.event.issue.labels.*.name, 'pending::feedback')
runs-on: ubuntu-latest
steps:
# remove [pending::feedback]
- uses: actions-ecosystem/action-remove-labels@2ce5d41b4b6aa8503e285553f75ed56e0a40bae0 # v1.3.0
with:
labels: ${{ env.FEEDBACK_LBL }}
github_token: ${{ secrets.PROJECT_TOKEN }}
# add [pending::support], if still open
- uses: actions-ecosystem/action-add-labels@18f1af5e3544586314bbe15c0273249c770b2daf # v1.1.3
if: github.event.issue.state == 'open'
with:
labels: ${{ env.SUPPORT_LBL }}
github_token: ${{ secrets.PROJECT_TOKEN }}
49 changes: 49 additions & 0 deletions .github/workflows/labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Sync Labels

on:
# NOTE: github.event is workflow_dispatch payload:
# https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#workflow_dispatch
workflow_dispatch:
inputs:
delete-unmapped:
description: Delete labels not mapped in either global or local label configurations.
default: false
type: boolean

dry-run:
description: Run label synchronization workflow without making any changes.
default: false
type: boolean

jobs:
sync:
if: '!github.event.repository.fork'
runs-on: ubuntu-latest
env:
GLOBAL: https://raw.githubusercontent.com/conda/infra/main/.github/global.yml
LOCAL: .github/labels.yml
steps:
- uses: actions/checkout@8e8c483db84b4bee98b60c0593521ed34d9990e8 # v6.0.1

- id: has_local
uses: andstor/file-existence-action@076e0072799f4942c8bc574a82233e1e4d13e9d6 # v3.0.0
with:
files: ${{ env.LOCAL }}

- name: Global Only
uses: EndBug/label-sync@52074158190acb45f3077f9099fea818aa43f97a # v2.3.3
if: steps.has_local.outputs.files_exists == 'false'
with:
config-file: ${{ env.GLOBAL }}
delete-other-labels: ${{ inputs.delete-unmapped }}
dry-run: ${{ inputs.dry-run }}

- name: Global & Local
uses: EndBug/label-sync@52074158190acb45f3077f9099fea818aa43f97a # v2.3.3
if: steps.has_local.outputs.files_exists == 'true'
with:
config-file: |
${{ env.GLOBAL }}
${{ env.LOCAL }}
delete-other-labels: ${{ inputs.delete-unmapped }}
dry-run: ${{ inputs.dry-run }}
Loading