mirror of
https://github.com/Unleash/unleash.git
synced 2024-12-22 19:07:54 +01:00
7c646bc523
Added more tests around specific plans. Also added snapshot as per our conversation @gastonfournier, but I'm unsure how much value it will give because it seems that the tests should already catch this using respondWithValidation and the OpenAPI schema. The problem here is that empty array is a valid state, so there were no reason for the schema to break the tests.
65 lines
2.4 KiB
YAML
65 lines
2.4 KiB
YAML
name: Core Feature Alert
|
|
|
|
on:
|
|
pull_request:
|
|
types:
|
|
- opened
|
|
- synchronize
|
|
paths:
|
|
- src/lib/features/client-feature-toggles/**
|
|
- src/lib/features/frontend-api/**
|
|
|
|
jobs:
|
|
notify-core-changes:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Fetch PR Creator's Username
|
|
id: pr-creator
|
|
run: echo "PR_CREATOR=${{ github.event.pull_request.user.login }}" >> $GITHUB_ENV
|
|
|
|
- name: Post a notification about core feature changes if not already commented
|
|
uses: actions/github-script@v6
|
|
with:
|
|
script: |
|
|
const prCreator = process.env.PR_CREATOR;
|
|
const commentBody = `@${prCreator}, core features have been modified in this pull request. Please review carefully!`;
|
|
|
|
const { data: comments } = await github.rest.issues.listComments({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
issue_number: context.payload.pull_request.number,
|
|
});
|
|
|
|
const alreadyCommented = comments.some(comment => comment.body === commentBody);
|
|
|
|
if (!alreadyCommented) {
|
|
await github.rest.issues.createComment({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
issue_number: context.payload.pull_request.number,
|
|
body: commentBody,
|
|
});
|
|
console.log('Posted a new comment.');
|
|
} else {
|
|
console.log('Comment already exists, skipping.');
|
|
}
|
|
- name: Add reviewers to the PR if they are not the creator
|
|
uses: actions/github-script@v6
|
|
with:
|
|
script: |
|
|
const prCreator = process.env.PR_CREATOR;
|
|
const allReviewers = ['FredrikOseberg', 'gastonfournier', 'chriswk', 'ivarconr'];
|
|
const reviewersToAdd = allReviewers.filter(reviewer => reviewer !== prCreator);
|
|
|
|
if (reviewersToAdd.length > 0) {
|
|
github.rest.pulls.requestReviewers({
|
|
owner: context.repo.owner,
|
|
repo: context.repo.repo,
|
|
pull_number: context.payload.pull_request.number,
|
|
reviewers: reviewersToAdd,
|
|
});
|
|
console.log(`Added reviewers: ${reviewersToAdd.join(', ')}`);
|
|
} else {
|
|
console.log(`No reviewers to add as all match the PR creator.`);
|
|
} |