Skip to content

feat: complete CI/CD pipeline with lint enforcement, Docker coverage for all components, and Go CodeQL analysis#18

Merged
MaximumTrainer merged 3 commits intomainfrom
copilot/add-cicd-pipeline-workflows
Apr 1, 2026
Merged

feat: complete CI/CD pipeline with lint enforcement, Docker coverage for all components, and Go CodeQL analysis#18
MaximumTrainer merged 3 commits intomainfrom
copilot/add-cicd-pipeline-workflows

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 1, 2026

  • Explore repository structure and understand build/test/lint commands
  • Fix ci.yml: correct Gradle task, add JaCoCo coverage upload, fix frontend lint enforcement
  • Add ESLint to frontend: add deps to package.json, create .eslintrc.cjs config, rename Modal.vueAppModal.vue
  • Enhance docker.yml: add CLI image build/push, PR verification, conditional push
  • Enhance codeql.yml: add Go analysis job for the CLI
  • Consolidate duplicate vue imports in JobsView.vue into a single top-level import

Copilot AI linked an issue Apr 1, 2026 that may be closed by this pull request
… CLI, and Go CodeQL

Agent-Logs-Url: https://github.com/MaximumTrainer/OpenDataMask/sessions/cda54cba-2e50-42b1-a722-9b24d568c178

Co-authored-by: MaximumTrainer <1376575+MaximumTrainer@users.noreply.github.com>
Copilot AI changed the title [WIP] Add CI/CD pipeline with workflows for build, test and lint feat: complete CI/CD pipeline with lint enforcement, Docker coverage for all components, and Go CodeQL analysis Apr 1, 2026
Copilot AI requested a review from MaximumTrainer April 1, 2026 16:33
@MaximumTrainer MaximumTrainer requested review from Copilot and removed request for MaximumTrainer April 1, 2026 16:40
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds a full CI/CD baseline for a 3-component monorepo (Kotlin/Spring backend, Vue frontend, Go CLI), including enforced linting, Docker builds for all components, and CodeQL analysis (now including Go).

Changes:

  • Enforced frontend linting by adding ESLint + config and removing the previous lint “pass-through”.
  • Expanded GitHub Actions: CI uploads JaCoCo artifacts, Docker workflow builds all 3 images (PR builds without push; push-to-main publishes), and CodeQL now analyzes Go.
  • Renamed and replaced the old Modal.vue usage with a new multi-word AppModal.vue across the affected views.

Reviewed changes

Copilot reviewed 9 out of 11 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
frontend/src/views/WorkspacesView.vue Swaps modal usage to AppModal to satisfy Vue lint rules.
frontend/src/views/TablesView.vue Swaps modal usage to AppModal for table/column modals.
frontend/src/views/JobsView.vue Swaps modal usage to AppModal for job creation modal.
frontend/src/views/ConnectionsView.vue Swaps modal usage to AppModal for connection create/edit modal.
frontend/src/components/AppModal.vue Introduces the new modal component used across views.
frontend/package.json Adds ESLint-related devDependencies and updates the lint script to be non-fixing.
frontend/package-lock.json Locks new ESLint dependency tree.
frontend/.eslintrc.cjs Adds ESLint configuration for Vue 3 + TypeScript.
.github/workflows/ci.yml Uses --no-daemon, uploads JaCoCo report artifacts, and enforces frontend lint failures.
.github/workflows/docker.yml Adds PR-triggered build-only verification, conditions pushes on push, and builds/pushes the CLI image.
.github/workflows/codeql.yml Adds Go CodeQL analysis job and uses --no-daemon for Gradle build.
Files not reviewed (1)
  • frontend/package-lock.json: Language not supported
Comments suppressed due to low confidence (1)

.github/workflows/docker.yml:16

  • This workflow runs on pull_request but grants packages: write for the entire job. Consider splitting into separate jobs (PR build-only with packages: read or default permissions, and push-to-main with packages: write) to minimize token privileges when building untrusted PR code.
    name: Build and Push Docker Images
    runs-on: ubuntu-latest
    permissions:
      contents: read
      packages: write


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@@ -1,7 +1,7 @@
<script setup lang="ts">
import { ref, onMounted, computed } from 'vue'
Copy link

Copilot AI Apr 1, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This file imports from vue twice (top-level import and a later import { onUnmounted } from 'vue' further down). Consolidate these into a single top-level import to avoid non-idiomatic mid-file imports and keep the module header consistent.

Suggested change
import { ref, onMounted, computed } from 'vue'
import { ref, onMounted, onUnmounted, computed } from 'vue'

Copilot uses AI. Check for mistakes.
@MaximumTrainer
Copy link
Copy Markdown
Owner

@copilot apply changes based on the comments in this thread

…p-level import

Agent-Logs-Url: https://github.com/MaximumTrainer/OpenDataMask/sessions/1fb5cebf-fd21-44f8-9edb-6f2122f6c3a2

Co-authored-by: MaximumTrainer <1376575+MaximumTrainer@users.noreply.github.com>
Copy link
Copy Markdown
Contributor Author

Copilot AI commented Apr 1, 2026

@copilot apply changes based on the comments in this thread

Done in 68deb47. Consolidated the two vue imports in JobsView.vue into a single top-level import: import { ref, onMounted, onUnmounted, computed } from 'vue', and removed the mid-file import { onUnmounted } from 'vue'.

@github-advanced-security
Copy link
Copy Markdown

You are seeing this message because GitHub Code Scanning has recently been set up for this repository, or this pull request contains the workflow file for the Code Scanning tool.

What Enabling Code Scanning Means:

  • The 'Security' tab will display more code scanning analysis results (e.g., for the default branch).
  • Depending on your configuration and choice of analysis tool, future pull requests will be annotated with code scanning analysis results.
  • You will be able to see the analysis results for the pull request's branch on this overview once the scans have completed and the checks have passed.

For more information about GitHub Code Scanning, check out the documentation.

@MaximumTrainer MaximumTrainer marked this pull request as ready for review April 1, 2026 16:57
@MaximumTrainer MaximumTrainer merged commit c8b54c4 into main Apr 1, 2026
8 checks passed
@MaximumTrainer MaximumTrainer deleted the copilot/add-cicd-pipeline-workflows branch April 1, 2026 16:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CI/CD Pipeline

4 participants