Skip to content

Comments

Migrating Azure pipelines to GHA workflows#30

Merged
lamkina merged 65 commits intomainfrom
feature-migrate_azure2gha
Feb 17, 2026
Merged

Migrating Azure pipelines to GHA workflows#30
lamkina merged 65 commits intomainfrom
feature-migrate_azure2gha

Conversation

@lamkina
Copy link
Contributor

@lamkina lamkina commented Feb 3, 2026

Purpose

This PR migrates our CI infrastructure from Azure pipelines to Github Actions workflows. This will target the SR runners instead of the runners provided by Azure.

This PR will remove the Azure pipelines templates.

Expected time until merged

1-2 days

Type of change

  • Bugfix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (non-backwards-compatible fix or feature)
  • Code style update (formatting, renaming)
  • Refactoring (no functional changes, no API changes)
  • Documentation update
  • Maintenance update
  • Other (please describe)

Copy link
Contributor

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

This PR migrates CI infrastructure from Azure Pipelines to GitHub Actions workflows. The migration removes all Azure-specific templates and configurations while introducing equivalent GitHub Actions reusable workflows. A new combine-config.py script has been added at the repository root to support configuration merging for tools like pylint and isort.

Changes:

  • Removed all Azure Pipeline templates and configuration files from the azure/ directory
  • Added new GitHub Actions reusable workflows for build, test, formatting, and linting
  • Created comprehensive documentation for GitHub Actions workflows in .github/workflows/README.md
  • Updated existing workflows to use consistent Python 3.11 and improved configuration management

Reviewed changes

Copilot reviewed 21 out of 21 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
ruff.toml Reformatted select array and added McCabe complexity configuration
combine-config.py New script for merging INI-style configuration files with improved error handling
azure/fprettify.sh Removed Azure-specific fprettify script
azure/combine-config.py Removed Azure-specific config merge script
azure/clang-format.sh Removed Azure-specific clang-format script
azure/azure_template.yaml Removed Azure pipeline template
azure/azure_tapenade.yaml Removed Azure Tapenade job template
azure/azure_style.yaml Removed Azure style check job template
azure/azure_pypi.yaml Removed Azure PyPI deployment template
azure/azure_build.yaml Removed Azure build and test job template
azure/README.md Removed Azure pipelines documentation
.github/workflows/tapenade.yaml New GHA workflow for Tapenade checks
.github/workflows/pypi.yaml Updated Python version to 3.11
.github/workflows/pylint.yaml Enhanced with config merging and Python 3.11
.github/workflows/mypy.yaml Updated to use only Python 3.11
.github/workflows/isort.yaml Enhanced with config merging and Python 3.11
.github/workflows/fprettify.yaml New GHA workflow for Fortran formatting
.github/workflows/format-and-lint.yaml Enhanced with McCabe complexity option and Python 3.11
.github/workflows/clang_format.yaml New GHA workflow for C/C++ formatting
.github/workflows/build.yaml New GHA workflow for Docker-based build and test
.github/workflows/README.md Comprehensive documentation for GHA workflows

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

@lamkina lamkina requested a review from sseraj February 5, 2026 04:27
@lamkina
Copy link
Contributor Author

lamkina commented Feb 5, 2026

Take a look at this splinetoolbox PR to see the testing for all of the workflow updates being made.

Copy link
Contributor

@sseraj sseraj left a comment

Choose a reason for hiding this comment

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

Two of my previous comments have not been addressed. I also have some new comments

@lamkina
Copy link
Contributor Author

lamkina commented Feb 16, 2026

Two of my previous comments have not been addressed. I also have some new comments

Which ones did I not address? Are they the fprettify and clang scripts or others?

@sseraj
Copy link
Contributor

sseraj commented Feb 16, 2026

Which ones did I not address? Are they the fprettify and clang scripts or others?

I bumped the two comments above

@lamkina lamkina requested a review from sseraj February 16, 2026 23:49
@sseraj sseraj changed the title MIgrating Azure pipelines to GHA workflows Migrating Azure pipelines to GHA workflows Feb 16, 2026
sseraj
sseraj previously approved these changes Feb 16, 2026
@lamkina
Copy link
Contributor Author

lamkina commented Feb 17, 2026

@eirikurj go ahead an merge this in the morning if you approve. If not, I'll address any additional comments first thing. Would like to get this one done tomorrow.

@lamkina lamkina requested review from eirikurj and sseraj February 17, 2026 18:01
@lamkina
Copy link
Contributor Author

lamkina commented Feb 17, 2026

I refactored the docker setup and docker cleanup steps into composite actions.

I tested them with the feature-migrate_azure2gha branch in the build and mypy workflows, then switched them back to main so they are ready to be merged.

@lamkina lamkina merged commit 957afe3 into main Feb 17, 2026
3 checks passed
@lamkina lamkina deleted the feature-migrate_azure2gha branch February 17, 2026 19:50
@sseraj sseraj mentioned this pull request Feb 18, 2026
13 tasks
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.

4 participants