Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
c73b509
Update the GitHub Actions workflow to allow for selective test execut…
zaharchenko-evgeny Jul 16, 2025
e3424ec
update CI workflow
zaharchenko-evgeny Jul 16, 2025
9433aa7
update CI workflow
zaharchenko-evgeny Jul 16, 2025
450b206
Skip spotless checks
zaharchenko-evgeny Jul 17, 2025
9382a9b
fix: don't delete features when deleting a release
sivaprasadreddy Jul 21, 2025
ee7efef
Add workflow: maven.yml
actions-user Jul 26, 2025
ca4c77f
Merge pull request #68 from jetbrains-eval-lab/add-workflow-maven
zaharchenko-evgeny Jul 26, 2025
e5fbda1
Add workflow: maven.yml
actions-user Jul 26, 2025
2fe83c9
Add workflow: pr-label-management.yml
actions-user Jul 26, 2025
19f1527
Merge pull request #69 from jetbrains-eval-lab/add-workflow-maven-202…
zaharchenko-evgeny Jul 26, 2025
0cff98b
Merge pull request #70 from jetbrains-eval-lab/add-workflow-pr-label-…
zaharchenko-evgeny Jul 26, 2025
63a61be
Add files (2): maven.yml,verify_java_dataset_instance.sh
actions-user Aug 13, 2025
3c4a93f
Merge pull request #72 from jetbrains-eval-lab/add-workflows-multiple…
zaharchenko-evgeny Aug 13, 2025
9536671
Update verify_java_dataset_instance.sh
zaharchenko-evgeny Aug 13, 2025
e5a4623
Merge pull request #63 from sivaprasadreddy/bugfix
zaharchenko-evgeny Aug 13, 2025
8118ef0
chore: update spotless-plugin to 3.0.0 and palantir-java-format to 2.…
innokenty Nov 11, 2025
7050584
chore: update spotless-plugin to 3.0.0 and palantir-java-format to 2.…
kaleev Nov 21, 2025
b6b08ec
maven: add test dependencies
innokenty Dec 11, 2025
b6b2f2e
fix: set testcontainers.version to 1.21.4 to fix GitHub build
innokenty Feb 19, 2026
df312bd
[auto] Extend API with release planning data
innokenty Mar 10, 2026
75a1602
fix: Update feature with invalid planningStatus results in 500 #228
YuliaMittova Mar 19, 2026
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
694 changes: 667 additions & 27 deletions .github/workflows/maven.yml

Large diffs are not rendered by default.

174 changes: 174 additions & 0 deletions .github/workflows/pr-label-management.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,174 @@
name: PR Label Management

on:
pull_request:
types: [opened, reopened, synchronize]
pull_request_review:
types: [submitted]

jobs:
manage-labels:
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
issues: write

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Add Review label on PR creation
if: github.event_name == 'pull_request'
uses: actions/github-script@v7
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
// Add Review label to the PR
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.payload.pull_request.number,
labels: ['Review']
});

console.log(`Added Review label to PR #${context.payload.pull_request.number}`);

// Extract related issue numbers from PR title and body
const prText = `${context.payload.pull_request.title} ${context.payload.pull_request.body || ''}`;
const issuePattern = /#(\d+)/g;
const relatedIssues = new Set();
let match;

while ((match = issuePattern.exec(prText)) !== null) {
relatedIssues.add(match[1]);
}

// Also check commit messages for issue references
const commits = await github.rest.pulls.listCommits({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: context.payload.pull_request.number
});

for (const commit of commits.data) {
const commitMessage = commit.commit.message;
while ((match = issuePattern.exec(commitMessage)) !== null) {
relatedIssues.add(match[1]);
}
}

// Add Review label to all related issues
for (const issueNumber of relatedIssues) {
try {
// Check if issue exists
await github.rest.issues.get({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: parseInt(issueNumber)
});

// Add Review label to the issue
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: parseInt(issueNumber),
labels: ['Review']
});

console.log(`Added Review label to related issue #${issueNumber}`);
} catch (error) {
console.log(`Error processing issue #${issueNumber}: ${error.message}`);
}
}

- name: Handle PR approval
if: github.event_name == 'pull_request_review' && github.event.review.state == 'approved'
uses: actions/github-script@v7
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
script: |
const prNumber = context.payload.pull_request.number;

// Remove Review label and add Verified label to the PR
try {
// First try to remove the Review label
await github.rest.issues.removeLabel({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: prNumber,
name: 'Review'
});
console.log(`Removed Review label from PR #${prNumber}`);
} catch (error) {
console.log(`Note: Review label might not exist on PR #${prNumber}: ${error.message}`);
}

// Add Verified label to the PR
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: prNumber,
labels: ['Verified']
});
console.log(`Added Verified label to PR #${prNumber}`);

// Extract related issue numbers from PR title and body
const prText = `${context.payload.pull_request.title} ${context.payload.pull_request.body || ''}`;
const issuePattern = /#(\d+)/g;
const relatedIssues = new Set();
let match;

while ((match = issuePattern.exec(prText)) !== null) {
relatedIssues.add(match[1]);
}

// Also check commit messages for issue references
const commits = await github.rest.pulls.listCommits({
owner: context.repo.owner,
repo: context.repo.repo,
pull_number: prNumber
});

for (const commit of commits.data) {
const commitMessage = commit.commit.message;
while ((match = issuePattern.exec(commitMessage)) !== null) {
relatedIssues.add(match[1]);
}
}

// Update labels on all related issues
for (const issueNumber of relatedIssues) {
try {
// Check if issue exists
await github.rest.issues.get({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: parseInt(issueNumber)
});

// Try to remove Review label from the issue
try {
await github.rest.issues.removeLabel({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: parseInt(issueNumber),
name: 'Review'
});
console.log(`Removed Review label from related issue #${issueNumber}`);
} catch (error) {
console.log(`Note: Review label might not exist on issue #${issueNumber}: ${error.message}`);
}

// Add Verified label to the issue
await github.rest.issues.addLabels({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: parseInt(issueNumber),
labels: ['Verified']
});
console.log(`Added Verified label to related issue #${issueNumber}`);
} catch (error) {
console.log(`Error processing issue #${issueNumber}: ${error.message}`);
}
}
Loading