Added CHANGELOG and verifier workflow (#218)

* Added CHANGELOG and verifier workflow

Signed-off-by: Harsha Vamsi Kalluri <harshavamsi096@gmail.com>

* Update contributing to include changelog

Signed-off-by: Harsha Vamsi Kalluri <harshavamsi096@gmail.com>

* Fix links

Signed-off-by: Harsha Vamsi Kalluri <harshavamsi096@gmail.com>

* Add changelog and changelog verifier

Signed-off-by: Harsha Vamsi Kalluri <harshavamsi096@gmail.com>

* Adding dependabot actions for changelog PR

Signed-off-by: Harsha Vamsi Kalluri <harshavamsi096@gmail.com>

Signed-off-by: Harsha Vamsi Kalluri <harshavamsi096@gmail.com>
This commit is contained in:
Harsha Vamsi Kalluri
2022-10-20 11:48:53 -07:00
committed by GitHub
parent 006dfc6cd7
commit ecd15d44c7
5 changed files with 96 additions and 0 deletions
+3
View File
@@ -4,4 +4,7 @@ updates:
package-ecosystem: pip
schedule:
interval: weekly
labels:
- "dependabot"
- "dependencies"
version: 2
+18
View File
@@ -0,0 +1,18 @@
name: "Changelog Verifier"
on:
pull_request:
types: [opened, edited, review_requested, synchronize, reopened, ready_for_review, labeled, unlabeled]
jobs:
# Enforces the update of a changelog file on every pull request
verify-changelog:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
token: ${{ secrets.GITHUB_TOKEN }}
ref: ${{ github.event.pull_request.head.sha }}
- uses: dangoslen/changelog-enforcer@v3
with:
skipLabels: "autocut"
+37
View File
@@ -0,0 +1,37 @@
name: Dependabot PR actions
on: pull_request
jobs:
dependabot:
runs-on: ubuntu-latest
permissions:
pull-requests: write
contents: write
if: ${{ github.actor == 'dependabot[bot]' }}
steps:
- name: GitHub App token
id: github_app_token
uses: tibdex/github-app-token@v1.5.0
with:
app_id: ${{ secrets.APP_ID }}
private_key: ${{ secrets.APP_PRIVATE_KEY }}
installation_id: 22958780
- name: Check out code
uses: actions/checkout@v2
with:
token: ${{ steps.github_app_token.outputs.token }}
- name: Update the changelog
uses: dangoslen/dependabot-changelog-helper@v1
with:
version: 'Unreleased'
- name: Commit the changes
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: "Update changelog"
branch: ${{ github.head_ref }}
commit_user_name: dependabot[bot]
commit_user_email: support@github.com
commit_options: '--signoff'
+19
View File
@@ -0,0 +1,19 @@
# CHANGELOG
Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
## [Unreleased]
### Added
- Github workflow for changelog verification ([#218](https://github.com/opensearch-project/opensearch-py/pull/218))
### Changed
### Deprecated
### Removed
### Fixed
### Security
[Unreleased]: https://github.com/opensearch-project/opensearch-py/compare/2.0...HEAD
+19
View File
@@ -5,6 +5,8 @@
- [Feature Requests](#feature-requests)
- [Contributing Code](#contributing-code)
- [Developer Certificate of Origin](#developer-certificate-of-origin)
- [Changelog](#changelog)
- [Adding Changes](#adding-changes)
- [Review Process](#review-process)
## Contributing to OpenSearch
@@ -80,6 +82,23 @@ Signed-off-by: Jane Smith <jane.smith@email.com>
You may type this line on your own when writing your commit messages. However, if your user.name and user.email are set in your git configs, you can use `-s` or ` signoff` to add the `Signed-off-by` line to the end of the commit message.
## Changelog
OpenSearch-py maintains a version specific changelog by enforcing a change to the ongoing [CHANGELOG](CHANGELOG.md) file adhering to the [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) format.
The changes are curated by version, with the changes to the main branch added chronologically to the `Unreleased` version. Each version has corresponding sections which list out the category of the change - `Added`, `Changed`, `Deprecated`, `Removed`, `Fixed`, `Security`.
### Adding Changes
As a contributor, you must ensure that every pull request has its changes listed out within the corresponding version and appropriate section of the [CHANGELOG](CHANGELOG.md) file.
Adding in the change is a two step process -
1. Add your changes to the corresponding section within the CHANGELOG file with dummy pull request information, publish the PR.
2. Update the entry for your change in [`CHANGELOG.md`](CHANGELOG.md) and make sure that you reference the pull request there.
## Review Process
We deeply appreciate everyone who takes the time to make a contribution. We will review all contributions as quickly as possible. As a reminder, [opening an issue](https://github.com/opensearch-project/opensearch-py/issues/new/choose) discussing your change before you make it is the best way to smooth the PR process. This will prevent a rejection because someone else is already working on the problem, or because the solution is incompatible with the architectural direction.