From 98f1c43369280e143d699b34c12cd3d7e1ef1fe7 Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Tue, 18 Jul 2023 21:04:41 +0200 Subject: [PATCH 1/5] chore: initial version of resources request --- project-resources/GITHUB_REQUESTS/2023.md | 4 + project-resources/GITHUB_REQUESTS/README.md | 3 + .../REQUESTING_GITHUB_RESOURCES.md | 85 +++++++++++++++++++ 3 files changed, 92 insertions(+) create mode 100644 project-resources/GITHUB_REQUESTS/2023.md create mode 100644 project-resources/GITHUB_REQUESTS/README.md create mode 100644 project-resources/REQUESTING_GITHUB_RESOURCES.md diff --git a/project-resources/GITHUB_REQUESTS/2023.md b/project-resources/GITHUB_REQUESTS/2023.md new file mode 100644 index 000000000..01ec14928 --- /dev/null +++ b/project-resources/GITHUB_REQUESTS/2023.md @@ -0,0 +1,4 @@ +# 2023 GitHub Resources Request Record + +First Name | Last Name | Project | Amount requested | Pull Request date | Pull Request link +-|-|-|-|-|- diff --git a/project-resources/GITHUB_REQUESTS/README.md b/project-resources/GITHUB_REQUESTS/README.md new file mode 100644 index 000000000..8490238de --- /dev/null +++ b/project-resources/GITHUB_REQUESTS/README.md @@ -0,0 +1,3 @@ +# GitHub Resource Requests + +For details on Requesting GitHub Resources, please see [REQUESTING_GITHUB_RESOURCES.md](../REQUESTING_GITHUB_RESOURCES.md). diff --git a/project-resources/REQUESTING_GITHUB_RESOURCES.md b/project-resources/REQUESTING_GITHUB_RESOURCES.md new file mode 100644 index 000000000..c1b4ed018 --- /dev/null +++ b/project-resources/REQUESTING_GITHUB_RESOURCES.md @@ -0,0 +1,85 @@ +# OpenJS Foundation GitHub Resources Requests + +OpenJS Foundation can provide monthly funding for the following Github resources: + +- Actions +- Codespaces +- Extra Large Runners (Actions) + +Funding for resources requires: + +1. CPC Approval +2. OpenJS Foundation Budget Approval + +## Archive of Approved Requests + +The list below contains a historical archive and reference of past approved project fund requests. + +- [2023](./GITHUB_REQUESTS/2023.md) + +## Requesting GitHub Resources + +The process for requesting Github resources is as follows: + +1. Estimate your monthly spend using https://github.com/pricing/calculator +2. Create a PR using the below template +3. Sumbit PR for CPC approval +4. If approved bring forward to OpenJS staff for budget approval +5. Once fully approved, OpenJS will need to be added as a billing manager, so that a virtual credit card can be +added. +6. OpenJS will implement spending limits consistent with the request + + +The requests should follow a specific template and contain relevant information regarding the requested features, as well as any information that might be useful to highlight the need for the requested features. + +The Pull Request template below should be completed with a Pull Request containing an addition to the `GITHUB_REQUESTS/{CurrentYear}.md` +spreadsheet from this repository, filling the required information. + +### Best Practices + +These best practices are a set of recommendations for maintaining a healthy usage of the resources. + +#### Codespaces Best-Practices + +- When enabling Codespaces, we recommend that only a set of repositories have Codespaces enabled, to avoid it being used on projects that do not require Codespaces. +- We recommend setting policies that best fit your project needs, but that are reasonable in terms of resource usages, such as: + - Limiting the amount of concurrent Codespaces a member might own + - Defining a reasonable timeout policy to avoid extra unnecessary costs +- If your organisation has a large amount of members, we recommend limiting the access of Codespaces to members that would benefit from it and possibly making it an opt-in process (so that members request access to Codespaces) + - This is a recommended practice as if individual members accidentally reach the budgetry limit defined, this affects everyones usage of Codespace as the feature would be locked out until the next billing cycle + +### GitHub Resource Request PR Template + +```md +## GitHub Resource Request for {Project Name} + +- **Estimated monthly spend:** USD XXXX.XX +- **Requested Features:** + - [ ] Actions + - [ ] Codespaces + - [ ] Extra Large Runners (Actions) +- **Fund Request Champions:** + - Champion A (@handle) + - Champion B (@handle) + +### Intended usage of the resouces + + + +### Distribution of the Funds + + + + +### Timeline of the Request + + + +cc @openjs-foundation/cpc +``` + +## Approvals + +The request is submitted to the CPC for evaluation. The CPC evaluates the request following its [decision-making process](https://github.com/openjs-foundation/cross-project-council/blob/main/CPC-CHARTER.md#section-9-decision-making) and if approved, informs OpenJS staff +that the request needs budget approval. Requests approved by the CPC are subject to final budget approval by +the OpenJS Foundation. From 7181ed9a65a6ad08622ccb5dc4149e0b21e65be4 Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Tue, 18 Jul 2023 21:05:03 +0200 Subject: [PATCH 2/5] chore: moved project fund folders and minor typo fixes --- project-resources/PROJECT_FUND.md | 8 ++++---- {PROJECT_FUND => project-resources/PROJECT_FUND}/2023.md | 0 .../PROJECT_FUND}/README.md | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) rename {PROJECT_FUND => project-resources/PROJECT_FUND}/2023.md (100%) rename {PROJECT_FUND => project-resources/PROJECT_FUND}/README.md (68%) diff --git a/project-resources/PROJECT_FUND.md b/project-resources/PROJECT_FUND.md index e69361e84..c17fea8df 100644 --- a/project-resources/PROJECT_FUND.md +++ b/project-resources/PROJECT_FUND.md @@ -9,7 +9,7 @@ Alongside these lines, the fund exists to support the development of the project The list below contains a historical archive and reference of past approved project fund requests. -- [2023](../PROJECT_FUND/2023.md) +- [2023](./PROJECT_FUND/2023.md) ## Requesting Project Funds @@ -35,7 +35,7 @@ spreadsheet from this repository, filling the required information. -### Intended usage of the resouces +### Intended usage of the resources @@ -55,12 +55,12 @@ spreadsheet from this repository, filling the required information. cc @openjs-foundation/cpc ``` -## Process +## Approval Process The request must be made to the CPC for evaluation. The CPC evaluates the request following its [decision-making process](https://github.com/openjs-foundation/cross-project-council/blob/main/CPC-CHARTER.md#section-9-decision-making) and makes a recommendation to the Board. Finally the request should be forwarded to the Board of Directors for final approval. -## Evaluation +## Post-mortem Evaluation An evaluation should be done after the conclusion of the timeline of the fund request. Ideally as a comment on the same PR as it would notify the current people subscribed to the Pull Request. The template below contains the recommended format for the evaluation, but we believe more/less information can be added by the champions of the request through good judgement. diff --git a/PROJECT_FUND/2023.md b/project-resources/PROJECT_FUND/2023.md similarity index 100% rename from PROJECT_FUND/2023.md rename to project-resources/PROJECT_FUND/2023.md diff --git a/PROJECT_FUND/README.md b/project-resources/PROJECT_FUND/README.md similarity index 68% rename from PROJECT_FUND/README.md rename to project-resources/PROJECT_FUND/README.md index a1e950eba..6e8ccfdc9 100644 --- a/PROJECT_FUND/README.md +++ b/project-resources/PROJECT_FUND/README.md @@ -1,3 +1,3 @@ # Project Fund -For details on the Project Fund, please see [PROJECT_FUND.md](../project-resources/PROJECT_FUND.md). +For details on the Project Fund, please see [PROJECT_FUND.md](../PROJECT_FUND.md). From 5ff6b0876f727dd3d84d0da385a5ac2f32175343 Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Wed, 19 Jul 2023 10:47:06 +0100 Subject: [PATCH 3/5] chore: updated the documentation for requesting resources Co-authored-by: Benjamin Sternthal --- .../REQUESTING_GITHUB_RESOURCES.md | 21 +++++-------------- 1 file changed, 5 insertions(+), 16 deletions(-) diff --git a/project-resources/REQUESTING_GITHUB_RESOURCES.md b/project-resources/REQUESTING_GITHUB_RESOURCES.md index c1b4ed018..dba291c07 100644 --- a/project-resources/REQUESTING_GITHUB_RESOURCES.md +++ b/project-resources/REQUESTING_GITHUB_RESOURCES.md @@ -19,19 +19,15 @@ The list below contains a historical archive and reference of past approved proj ## Requesting GitHub Resources -The process for requesting Github resources is as follows: +The process for requesting Github resources is: 1. Estimate your monthly spend using https://github.com/pricing/calculator -2. Create a PR using the below template -3. Sumbit PR for CPC approval -4. If approved bring forward to OpenJS staff for budget approval -5. Once fully approved, OpenJS will need to be added as a billing manager, so that a virtual credit card can be -added. -6. OpenJS will implement spending limits consistent with the request +2. Create and submit a PR using the template for CPC approval +4. If approved the CPC will discuss with OpenJS staff in the next CPC meeting +5. Once fully approved, you will need to add OpenJS staff as a billing manager on your project +6. OpenJS will add a credit card and implement spending limits consistent with the request -The requests should follow a specific template and contain relevant information regarding the requested features, as well as any information that might be useful to highlight the need for the requested features. - The Pull Request template below should be completed with a Pull Request containing an addition to the `GITHUB_REQUESTS/{CurrentYear}.md` spreadsheet from this repository, filling the required information. @@ -66,14 +62,7 @@ These best practices are a set of recommendations for maintaining a healthy usag -### Distribution of the Funds - - - - -### Timeline of the Request - cc @openjs-foundation/cpc ``` From 5161caa7e8c60bb7bab6fc840ab551b55839a5dd Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Wed, 19 Jul 2023 19:37:00 +0100 Subject: [PATCH 4/5] chore: some minor wording update --- project-resources/REQUESTING_GITHUB_RESOURCES.md | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/project-resources/REQUESTING_GITHUB_RESOURCES.md b/project-resources/REQUESTING_GITHUB_RESOURCES.md index dba291c07..be4fc1e75 100644 --- a/project-resources/REQUESTING_GITHUB_RESOURCES.md +++ b/project-resources/REQUESTING_GITHUB_RESOURCES.md @@ -25,9 +25,9 @@ The process for requesting Github resources is: 2. Create and submit a PR using the template for CPC approval 4. If approved the CPC will discuss with OpenJS staff in the next CPC meeting 5. Once fully approved, you will need to add OpenJS staff as a billing manager on your project + - Billing Managers have only access to Billing Settings on your GitHub organisation 6. OpenJS will add a credit card and implement spending limits consistent with the request - The Pull Request template below should be completed with a Pull Request containing an addition to the `GITHUB_REQUESTS/{CurrentYear}.md` spreadsheet from this repository, filling the required information. @@ -62,13 +62,10 @@ These best practices are a set of recommendations for maintaining a healthy usag - - cc @openjs-foundation/cpc ``` ## Approvals The request is submitted to the CPC for evaluation. The CPC evaluates the request following its [decision-making process](https://github.com/openjs-foundation/cross-project-council/blob/main/CPC-CHARTER.md#section-9-decision-making) and if approved, informs OpenJS staff -that the request needs budget approval. Requests approved by the CPC are subject to final budget approval by -the OpenJS Foundation. +that the request needs budget approval. Requests approved by the CPC are subject to final budget approval by the OpenJS Foundation. From c0fb323fa6e93b259dee802870b2418df0d86a85 Mon Sep 17 00:00:00 2001 From: Claudio Wunder Date: Sat, 22 Jul 2023 00:15:23 +0200 Subject: [PATCH 5/5] Apply suggestions from code review Co-authored-by: Jordan Harband Signed-off-by: Claudio Wunder --- .../REQUESTING_GITHUB_RESOURCES.md | 20 +++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/project-resources/REQUESTING_GITHUB_RESOURCES.md b/project-resources/REQUESTING_GITHUB_RESOURCES.md index be4fc1e75..256b99da8 100644 --- a/project-resources/REQUESTING_GITHUB_RESOURCES.md +++ b/project-resources/REQUESTING_GITHUB_RESOURCES.md @@ -22,14 +22,13 @@ The list below contains a historical archive and reference of past approved proj The process for requesting Github resources is: 1. Estimate your monthly spend using https://github.com/pricing/calculator -2. Create and submit a PR using the template for CPC approval -4. If approved the CPC will discuss with OpenJS staff in the next CPC meeting -5. Once fully approved, you will need to add OpenJS staff as a billing manager on your project - - Billing Managers have only access to Billing Settings on your GitHub organisation -6. OpenJS will add a credit card and implement spending limits consistent with the request +1. Create and submit a PR using the template for CPC approval +1. If approved the CPC will discuss with OpenJS staff in the next CPC meeting +1. Once fully approved, you will need to add OpenJS staff as a billing manager on your project + - Billing Managers have only access to Billing Settings on your GitHub organization +1. OpenJS will add a credit card and implement spending limits consistent with the request -The Pull Request template below should be completed with a Pull Request containing an addition to the `GITHUB_REQUESTS/{CurrentYear}.md` -spreadsheet from this repository, filling the required information. +The Pull Request template below should be completed with a Pull Request containing an addition to the `GITHUB_REQUESTS/{CurrentYear}.md` spreadsheet from this repository, filling the required information. ### Best Practices @@ -41,7 +40,7 @@ These best practices are a set of recommendations for maintaining a healthy usag - We recommend setting policies that best fit your project needs, but that are reasonable in terms of resource usages, such as: - Limiting the amount of concurrent Codespaces a member might own - Defining a reasonable timeout policy to avoid extra unnecessary costs -- If your organisation has a large amount of members, we recommend limiting the access of Codespaces to members that would benefit from it and possibly making it an opt-in process (so that members request access to Codespaces) +- If your organization has a large amount of members, we recommend limiting the access of Codespaces to members that would benefit from it and possibly making it an opt-in process (so that members request access to Codespaces) - This is a recommended practice as if individual members accidentally reach the budgetry limit defined, this affects everyones usage of Codespace as the feature would be locked out until the next billing cycle ### GitHub Resource Request PR Template @@ -67,5 +66,6 @@ cc @openjs-foundation/cpc ## Approvals -The request is submitted to the CPC for evaluation. The CPC evaluates the request following its [decision-making process](https://github.com/openjs-foundation/cross-project-council/blob/main/CPC-CHARTER.md#section-9-decision-making) and if approved, informs OpenJS staff -that the request needs budget approval. Requests approved by the CPC are subject to final budget approval by the OpenJS Foundation. +The request is submitted to the CPC for evaluation. +The CPC evaluates the request following its [decision-making process](https://github.com/openjs-foundation/cross-project-council/blob/main/CPC-CHARTER.md#section-9-decision-making) and if approved, informs OpenJS staff that the request needs budget approval. +Requests approved by the CPC are subject to final budget approval by the OpenJS Foundation.