diff --git a/.github/workflows/format.yml b/.github/workflows/format.yml index c18d880..b1182a5 100644 --- a/.github/workflows/format.yml +++ b/.github/workflows/format.yml @@ -11,7 +11,7 @@ jobs: - uses: actions/checkout@v3 - uses: actions/setup-node@v2 with: - node-version: '18.10' + node-version: "18.10" - uses: actions/setup-go@v3 with: go-version: 1.19 diff --git a/.github/workflows/licenses.yml b/.github/workflows/licenses.yml index 7dcf1b2..9ef147d 100644 --- a/.github/workflows/licenses.yml +++ b/.github/workflows/licenses.yml @@ -14,8 +14,8 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-go@v2 with: - go-version: '1.18' + go-version: "1.18" - uses: actions/setup-node@v2 with: - node-version: '18.10' + node-version: "18.10" - run: make licenses diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index f8657ac..702e037 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -1,8 +1,8 @@ -name: 'Close Stale Issues' +name: "Close Stale Issues" on: workflow_dispatch: schedule: - - cron: '0 0 * * *' + - cron: "0 0 * * *" jobs: stale: @@ -17,8 +17,8 @@ jobs: stale-pr-message: | Thank you for opening this pull request. It appears that a request for e.g. information has not yet been completed. Therefore this issue will be automatically closed in 7 days, assuming that the proposed change is no longer required or has otherwise been resolved. - stale-issue-label: 'stale' - stale-pr-label: 'stale' - only-labels: 'needs more info' + stale-issue-label: "stale" + stale-pr-label: "stale" + only-labels: "needs more info" days-before-stale: 7 days-before-close: 7 diff --git a/.github/workflows/sync.yml b/.github/workflows/sync.yml index 084d70a..a8393cf 100644 --- a/.github/workflows/sync.yml +++ b/.github/workflows/sync.yml @@ -6,10 +6,10 @@ on: # action is triggered on push to the following paths push: paths: - - 'templates/**' - - 'scripts/sync*' - - 'package.json' - - '.github/workflows/sync.yml' + - "templates/**" + - "scripts/sync*" + - "package.json" + - ".github/workflows/sync.yml" branches: - master diff --git a/.github/workflows/text-run.yml b/.github/workflows/text-run.yml index 858217d..26fe38b 100644 --- a/.github/workflows/text-run.yml +++ b/.github/workflows/text-run.yml @@ -16,6 +16,6 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-node@v2 with: - node-version: '15' + node-version: "15" - run: npm ci - run: npm run text-run diff --git a/Makefile b/Makefile index 08f38d5..31cd3d2 100644 --- a/Makefile +++ b/Makefile @@ -35,7 +35,7 @@ test: .bin/shellcheck .bin/shfmt node_modules # runs all linters .bin/shfmt: Makefile echo installing Shellfmt ... mkdir -p .bin - curl -sSL https://github.com/mvdan/sh/releases/download/v3.5.1/shfmt_v3.5.1_linux_amd64 -o .bin/shfmt + curl -sSL https://github.com/mvdan/sh/releases/download/v3.9.0/shfmt_v3.9.0_darwin_arm64 -o .bin/shfmt chmod +x .bin/shfmt node_modules: package.json package-lock.json diff --git a/SECURITY.md b/SECURITY.md index a2516e4..c4bf7fa 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -7,32 +7,31 @@ types of Ory users. ## Apache 2.0 License Users -* **Security SLA:** No security Service Level Agreement (SLA) is provided. -* **Release Schedule:** Releases are planned every 3 to 6 months. These releases will contain all security fixes implemented up to that point. -* **Version Support:** Security patches are only provided for the current release version. - +- **Security SLA:** No security Service Level Agreement (SLA) is provided. +- **Release Schedule:** Releases are planned every 3 to 6 months. These releases will contain all security fixes implemented up to that point. +- **Version Support:** Security patches are only provided for the current release version. ## Ory Enterprise License Customers -* **Security SLA:** The following timelines apply for security vulnerabilities based on their severity: + +- **Security SLA:** The following timelines apply for security vulnerabilities based on their severity: - Critical: Resolved within 14 days. - High: Resolved within 30 days. - Medium: Resolved within 90 days. - Low: Resolved within 180 days. - Informational: Addressed as needed. -* **Release Schedule:** Updates are provided as soon as vulnerabilities are resolved, adhering to the above SLA. -* **Version Support:** Depending on the Ory Enterprise License agreement multiple versions can be supported. - +- **Release Schedule:** Updates are provided as soon as vulnerabilities are resolved, adhering to the above SLA. +- **Version Support:** Depending on the Ory Enterprise License agreement multiple versions can be supported. ## Ory Network Users -* **Security SLA:** The following timelines apply for security vulnerabilities based on their severity: + +- **Security SLA:** The following timelines apply for security vulnerabilities based on their severity: - Critical: Resolved within 14 days. - High: Resolved within 30 days. - Medium: Resolved within 90 days. - Low: Resolved within 180 days. - Informational: Addressed as needed. -* **Release Schedule:** Updates are automatically deployed to Ory Network as soon as vulnerabilities are resolved, adhering to the above SLA. -* **Version Support:** Ory Network always runs the most current version. - +- **Release Schedule:** Updates are automatically deployed to Ory Network as soon as vulnerabilities are resolved, adhering to the above SLA. +- **Version Support:** Ory Network always runs the most current version. [Get in touch](https://www.ory.sh/contact/) to learn more about Ory's security SLAs and process. diff --git a/templates/repository/action/.github/workflows/release_tagger.yml b/templates/repository/action/.github/workflows/release_tagger.yml index f37d4ad..11eb443 100644 --- a/templates/repository/action/.github/workflows/release_tagger.yml +++ b/templates/repository/action/.github/workflows/release_tagger.yml @@ -10,6 +10,6 @@ jobs: steps: - uses: Actions-R-Us/actions-tagger@latest env: - GITHUB_TOKEN: '${{ github.token }}' + GITHUB_TOKEN: "${{ github.token }}" with: publish_latest_tag: true diff --git a/templates/repository/common/.github/ISSUE_TEMPLATE/BUG-REPORT.yml b/templates/repository/common/.github/ISSUE_TEMPLATE/BUG-REPORT.yml index 97dd073..2ba8f4d 100644 --- a/templates/repository/common/.github/ISSUE_TEMPLATE/BUG-REPORT.yml +++ b/templates/repository/common/.github/ISSUE_TEMPLATE/BUG-REPORT.yml @@ -1,45 +1,40 @@ -description: 'Create a bug report' +description: "Create a bug report" labels: - bug -name: 'Bug Report' +name: "Bug Report" body: - attributes: value: "Thank you for taking the time to fill out this bug report!\n" type: markdown - attributes: - label: 'Preflight checklist' + label: "Preflight checklist" options: - - label: - 'I could not find a solution in the existing issues, docs, nor - discussions.' + - label: "I could not find a solution in the existing issues, docs, nor + discussions." required: true - - label: - "I agree to follow this project's [Code of + - label: "I agree to follow this project's [Code of Conduct](https://github.com/$REPOSITORY/blob/master/CODE_OF_CONDUCT.md)." required: true - - label: - "I have read and am following this repository's [Contribution + - label: "I have read and am following this repository's [Contribution Guidelines](https://github.com/$REPOSITORY/blob/master/CONTRIBUTING.md)." required: true - - label: - 'I have joined the [Ory Community Slack](https://slack.ory.sh).' - - label: - 'I am signed up to the [Ory Security Patch - Newsletter](https://ory.us10.list-manage.com/subscribe?u=ffb1a878e4ec6c0ed312a3480&id=f605a41b53).' + - label: "I have joined the [Ory Community Slack](https://slack.ory.sh)." + - label: "I am signed up to the [Ory Security Patch + Newsletter](https://ory.us10.list-manage.com/subscribe?u=ffb1a878e4ec6c0ed312a3480&id=f605a41b53)." id: checklist type: checkboxes - attributes: description: - 'Enter the slug or API URL of the affected Ory Network project. Leave - empty when you are self-hosting.' - label: 'Ory Network Project' - placeholder: 'https://.projects.oryapis.com' + "Enter the slug or API URL of the affected Ory Network project. Leave + empty when you are self-hosting." + label: "Ory Network Project" + placeholder: "https://.projects.oryapis.com" id: ory-network-project type: input - attributes: - description: 'A clear and concise description of what the bug is.' - label: 'Describe the bug' - placeholder: 'Tell us what you see!' + description: "A clear and concise description of what the bug is." + label: "Describe the bug" + placeholder: "Tell us what you see!" id: describe-bug type: textarea validations: @@ -53,17 +48,16 @@ body: 1. Run `docker run ....` 2. Make API Request to with `curl ...` 3. Request fails with response: `{"some": "error"}` - label: 'Reproducing the bug' + label: "Reproducing the bug" id: reproduce-bug type: textarea validations: required: true - attributes: - description: - 'Please copy and paste any relevant log output. This will be + description: "Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks. Please - redact any sensitive information' - label: 'Relevant log output' + redact any sensitive information" + label: "Relevant log output" render: shell placeholder: | log=error .... @@ -71,10 +65,10 @@ body: type: textarea - attributes: description: - 'Please copy and paste any relevant configuration. This will be + "Please copy and paste any relevant configuration. This will be automatically formatted into code, so no need for backticks. Please - redact any sensitive information!' - label: 'Relevant configuration' + redact any sensitive information!" + label: "Relevant configuration" render: yml placeholder: | server: @@ -83,14 +77,14 @@ body: id: config type: textarea - attributes: - description: 'What version of our software are you running?' + description: "What version of our software are you running?" label: Version id: version type: input validations: required: true - attributes: - label: 'On which operating system are you observing this issue?' + label: "On which operating system are you observing this issue?" options: - Ory Network - macOS @@ -101,19 +95,19 @@ body: id: operating-system type: dropdown - attributes: - label: 'In which environment are you deploying?' + label: "In which environment are you deploying?" options: - Ory Network - Docker - - 'Docker Compose' - - 'Kubernetes with Helm' + - "Docker Compose" + - "Kubernetes with Helm" - Kubernetes - Binary - Other id: deployment type: dropdown - attributes: - description: 'Add any other context about the problem here.' + description: "Add any other context about the problem here." label: Additional Context id: additional type: textarea diff --git a/templates/repository/common/.github/ISSUE_TEMPLATE/DESIGN-DOC.yml b/templates/repository/common/.github/ISSUE_TEMPLATE/DESIGN-DOC.yml index 7dfea67..96793c6 100644 --- a/templates/repository/common/.github/ISSUE_TEMPLATE/DESIGN-DOC.yml +++ b/templates/repository/common/.github/ISSUE_TEMPLATE/DESIGN-DOC.yml @@ -1,8 +1,7 @@ -description: - 'A design document is needed for non-trivial changes to the code base.' +description: "A design document is needed for non-trivial changes to the code base." labels: - rfc -name: 'Design Document' +name: "Design Document" body: - attributes: value: | @@ -18,39 +17,34 @@ body: after code reviews, and your pull requests will be merged faster. type: markdown - attributes: - label: 'Preflight checklist' + label: "Preflight checklist" options: - - label: - 'I could not find a solution in the existing issues, docs, nor - discussions.' + - label: "I could not find a solution in the existing issues, docs, nor + discussions." required: true - - label: - "I agree to follow this project's [Code of + - label: "I agree to follow this project's [Code of Conduct](https://github.com/$REPOSITORY/blob/master/CODE_OF_CONDUCT.md)." required: true - - label: - "I have read and am following this repository's [Contribution + - label: "I have read and am following this repository's [Contribution Guidelines](https://github.com/$REPOSITORY/blob/master/CONTRIBUTING.md)." required: true - - label: - 'I have joined the [Ory Community Slack](https://slack.ory.sh).' - - label: - 'I am signed up to the [Ory Security Patch - Newsletter](https://ory.us10.list-manage.com/subscribe?u=ffb1a878e4ec6c0ed312a3480&id=f605a41b53).' + - label: "I have joined the [Ory Community Slack](https://slack.ory.sh)." + - label: "I am signed up to the [Ory Security Patch + Newsletter](https://ory.us10.list-manage.com/subscribe?u=ffb1a878e4ec6c0ed312a3480&id=f605a41b53)." id: checklist type: checkboxes - attributes: description: - 'Enter the slug or API URL of the affected Ory Network project. Leave - empty when you are self-hosting.' - label: 'Ory Network Project' - placeholder: 'https://.projects.oryapis.com' + "Enter the slug or API URL of the affected Ory Network project. Leave + empty when you are self-hosting." + label: "Ory Network Project" + placeholder: "https://.projects.oryapis.com" id: ory-network-project type: input - attributes: description: | This section gives the reader a very rough overview of the landscape in which the new system is being built and what is actually being built. This isn’t a requirements doc. Keep it succinct! The goal is that readers are brought up to speed but some previous knowledge can be assumed and detailed info can be linked to. This section should be entirely focused on objective background facts. - label: 'Context and scope' + label: "Context and scope" id: scope type: textarea validations: @@ -59,7 +53,7 @@ body: - attributes: description: | A short list of bullet points of what the goals of the system are, and, sometimes more importantly, what non-goals are. Note, that non-goals aren’t negated goals like “The system shouldn’t crash”, but rather things that could reasonably be goals, but are explicitly chosen not to be goals. A good example would be “ACID compliance”; when designing a database, you’d certainly want to know whether that is a goal or non-goal. And if it is a non-goal you might still select a solution that provides it, if it doesn’t introduce trade-offs that prevent achieving the goals. - label: 'Goals and non-goals' + label: "Goals and non-goals" id: goals type: textarea validations: @@ -71,7 +65,7 @@ body: The design doc is the place to write down the trade-offs you made in designing your software. Focus on those trade-offs to produce a useful document with long-term value. That is, given the context (facts), goals and non-goals (requirements), the design doc is the place to suggest solutions and show why a particular solution best satisfies those goals. The point of writing a document over a more formal medium is to provide the flexibility to express the problem at hand in an appropriate manner. Because of this, there is no explicit guidance on how to actually describe the design. - label: 'The design' + label: "The design" id: design type: textarea validations: @@ -80,21 +74,21 @@ body: - attributes: description: | If the system under design exposes an API, then sketching out that API is usually a good idea. In most cases, however, one should withstand the temptation to copy-paste formal interface or data definitions into the doc as these are often verbose, contain unnecessary detail and quickly get out of date. Instead, focus on the parts that are relevant to the design and its trade-offs. - label: 'APIs' + label: "APIs" id: apis type: textarea - attributes: description: | Systems that store data should likely discuss how and in what rough form this happens. Similar to the advice on APIs, and for the same reasons, copy-pasting complete schema definitions should be avoided. Instead, focus on the parts that are relevant to the design and its trade-offs. - label: 'Data storage' + label: "Data storage" id: persistence type: textarea - attributes: description: | Design docs should rarely contain code, or pseudo-code except in situations where novel algorithms are described. As appropriate, link to prototypes that show the feasibility of the design. - label: 'Code and pseudo-code' + label: "Code and pseudo-code" id: pseudocode type: textarea @@ -107,7 +101,7 @@ body: On the other end are systems where the possible solutions are very well defined, but it isn't at all obvious how they could even be combined to achieve the goals. This may be a legacy system that is difficult to change and wasn't designed to do what you want it to do or a library design that needs to operate within the constraints of the host programming language. In this situation, you may be able to enumerate all the things you can do relatively easily, but you need to creatively put those things together to achieve the goals. There may be multiple solutions, and none of them are great, and hence such a document should focus on selecting the best way given all identified trade-offs. - label: 'Degree of constraint' + label: "Degree of constraint" id: constrait type: textarea diff --git a/templates/repository/common/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml b/templates/repository/common/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml index be9f450..a09d6d3 100644 --- a/templates/repository/common/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml +++ b/templates/repository/common/.github/ISSUE_TEMPLATE/FEATURE-REQUEST.yml @@ -1,8 +1,7 @@ -description: - 'Suggest an idea for this project without a plan for implementation' +description: "Suggest an idea for this project without a plan for implementation" labels: - feat -name: 'Feature Request' +name: "Feature Request" body: - attributes: value: | @@ -11,39 +10,33 @@ body: If you already have a plan to implement a feature or a change, please create a [design document](https://github.com/aeneasr/gh-template-test/issues/new?assignees=&labels=rfc&template=DESIGN-DOC.yml) instead if the change is non-trivial! type: markdown - attributes: - label: 'Preflight checklist' + label: "Preflight checklist" options: - - label: - 'I could not find a solution in the existing issues, docs, nor - discussions.' + - label: "I could not find a solution in the existing issues, docs, nor + discussions." required: true - - label: - "I agree to follow this project's [Code of + - label: "I agree to follow this project's [Code of Conduct](https://github.com/$REPOSITORY/blob/master/CODE_OF_CONDUCT.md)." required: true - - label: - "I have read and am following this repository's [Contribution + - label: "I have read and am following this repository's [Contribution Guidelines](https://github.com/$REPOSITORY/blob/master/CONTRIBUTING.md)." required: true - - label: - 'I have joined the [Ory Community Slack](https://slack.ory.sh).' - - label: - 'I am signed up to the [Ory Security Patch - Newsletter](https://ory.us10.list-manage.com/subscribe?u=ffb1a878e4ec6c0ed312a3480&id=f605a41b53).' + - label: "I have joined the [Ory Community Slack](https://slack.ory.sh)." + - label: "I am signed up to the [Ory Security Patch + Newsletter](https://ory.us10.list-manage.com/subscribe?u=ffb1a878e4ec6c0ed312a3480&id=f605a41b53)." id: checklist type: checkboxes - attributes: description: - 'Enter the slug or API URL of the affected Ory Network project. Leave - empty when you are self-hosting.' - label: 'Ory Network Project' - placeholder: 'https://.projects.oryapis.com' + "Enter the slug or API URL of the affected Ory Network project. Leave + empty when you are self-hosting." + label: "Ory Network Project" + placeholder: "https://.projects.oryapis.com" id: ory-network-project type: input - attributes: - description: - 'Is your feature request related to a problem? Please describe.' - label: 'Describe your problem' + description: "Is your feature request related to a problem? Please describe." + label: "Describe your problem" placeholder: "A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]" @@ -56,28 +49,27 @@ body: Describe the solution you'd like placeholder: | A clear and concise description of what you want to happen. - label: 'Describe your ideal solution' + label: "Describe your ideal solution" id: solution type: textarea validations: required: true - attributes: description: "Describe alternatives you've considered" - label: 'Workarounds or alternatives' + label: "Workarounds or alternatives" id: alternatives type: textarea validations: required: true - attributes: - description: 'What version of our software are you running?' + description: "What version of our software are you running?" label: Version id: version type: input validations: required: true - attributes: - description: - 'Add any other context or screenshots about the feature request here.' + description: "Add any other context or screenshots about the feature request here." label: Additional Context id: additional type: textarea diff --git a/templates/repository/common/.github/ISSUE_TEMPLATE/config.yml b/templates/repository/common/.github/ISSUE_TEMPLATE/config.yml index 02d86b3..49a589a 100644 --- a/templates/repository/common/.github/ISSUE_TEMPLATE/config.yml +++ b/templates/repository/common/.github/ISSUE_TEMPLATE/config.yml @@ -2,10 +2,8 @@ blank_issues_enabled: false contact_links: - name: Ory $PROJECT Forum url: $DISCUSSIONS - about: - Please ask and answer questions here, show your implementations and + about: Please ask and answer questions here, show your implementations and discuss ideas. - name: Ory Chat url: https://www.ory.sh/chat - about: - Hang out with other Ory community members to ask and answer questions. + about: Hang out with other Ory community members to ask and answer questions. diff --git a/templates/repository/common/.github/config.yml b/templates/repository/common/.github/config.yml index 0d121fe..ea33569 100644 --- a/templates/repository/common/.github/config.yml +++ b/templates/repository/common/.github/config.yml @@ -1,3 +1,3 @@ todo: - keyword: '@todo' + keyword: "@todo" label: todo diff --git a/templates/repository/common/.github/workflows/closed_references.yml b/templates/repository/common/.github/workflows/closed_references.yml index ebafc8a..2789ac4 100644 --- a/templates/repository/common/.github/workflows/closed_references.yml +++ b/templates/repository/common/.github/workflows/closed_references.yml @@ -2,13 +2,13 @@ name: Closed Reference Notifier on: schedule: - - cron: '0 0 * * *' + - cron: "0 0 * * *" workflow_dispatch: inputs: issueLimit: description: Max. number of issues to create required: true - default: '5' + default: "5" jobs: find_closed_references: @@ -19,7 +19,7 @@ jobs: - uses: actions/checkout@v2 - uses: actions/setup-node@v2-beta with: - node-version: '14' + node-version: "14" - uses: ory/closed-reference-notifier@v1 with: token: ${{ secrets.GITHUB_TOKEN }} diff --git a/templates/repository/common/.github/workflows/stale.yml b/templates/repository/common/.github/workflows/stale.yml index b168ce9..666299c 100644 --- a/templates/repository/common/.github/workflows/stale.yml +++ b/templates/repository/common/.github/workflows/stale.yml @@ -1,8 +1,8 @@ -name: 'Close Stale Issues' +name: "Close Stale Issues" on: workflow_dispatch: schedule: - - cron: '0 0 * * *' + - cron: "0 0 * * *" jobs: stale: @@ -35,10 +35,10 @@ jobs: Thank you for your understanding and to anyone who participated in the conversation! And as written above, please do participate in the conversation if this topic is important to you! Thank you 🙏✌️ - stale-issue-label: 'stale' - exempt-issue-labels: 'bug,blocking,docs,backlog' + stale-issue-label: "stale" + exempt-issue-labels: "bug,blocking,docs,backlog" days-before-stale: 365 days-before-close: 30 exempt-milestones: true exempt-assignees: true - only-pr-labels: 'stale' + only-pr-labels: "stale"