Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Aug 21, 2025

This PR adds comprehensive instructions for GitHub Copilot coding agents working in the Adoptium infrastructure repository. The instructions provide essential guidance for understanding and working with this Infrastructure-as-Code project.

Key Features

Firm Directive Structure: The instructions start with a clear directive to always reference the provided information first before falling back to additional search or context gathering, as requested in the issue.

Exhaustively Validated Commands: Every command documented in the instructions has been tested and validated to work correctly:

  • yamllint . - YAML linting (~2 seconds)
  • ansible-lint --offline - Ansible linting (~60 seconds, with expected offline warnings)
  • ansible localhost -m ping -i ansible/hosts - Basic connectivity testing
  • Docker build commands and Vagrant testing script access

Critical Timing Requirements: The instructions include measured build times and explicit "NEVER CANCEL" warnings for long-running operations:

  • Docker builds: 15-45+ minutes (measured 5+ minutes before network failure in restricted environment)
  • Vagrant playbook tests: 60-90 minutes
  • Ansible playbook execution: 30-60 minutes
  • Explicit timeout recommendations (60-120+ minutes) for all operations

Comprehensive Repository Coverage: The instructions cover all major aspects of the infrastructure repository:

  • Ansible playbooks for Unix, Windows, and AIX systems
  • Docker container configurations and testing
  • GitHub Actions CI/CD workflows with expected durations
  • Vagrant-based testing procedures
  • Repository structure and key file locations

Real-World Troubleshooting: Based on actual testing, the instructions document common issues and limitations in offline/restricted environments, including network connectivity issues with older base images and missing Galaxy collections.

Validation Scenarios

The instructions provide specific validation steps for different types of changes:

  • Basic linting for all changes
  • Ansible connectivity testing for playbook modifications
  • Docker build validation for container changes
  • Full Vagrant test suite for major infrastructure changes

Repository Context

This infrastructure repository is fundamentally different from traditional software projects - it's Infrastructure-as-Code using Ansible, Docker, and automated testing rather than traditional build tools. The instructions make this distinction clear and provide appropriate guidance for this context.

Fixes #4037.

Warning

Firewall rules blocked me from connecting to one or more addresses (expand for details)

I tried to connect to the following addresses, but was blocked by firewall rules:

  • galaxy.ansible.com
    • Triggering command: /usr/bin/python3 /home/REDACTED/.local/bin/ansible-galaxy collection install -r /home/REDACTED/work/infrastructure/infrastructure/collections/requirements.yml (dns block)

If you need me to access, download, or install something from one of these locations, you can either:


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

@github-actions github-actions bot added doc ghActions GitHub Actions labels Aug 21, 2025
Copilot AI changed the title [WIP] ✨ Set up Copilot instructions Add GitHub Copilot instructions for infrastructure repository Aug 21, 2025
Copilot finished work on behalf of karianna August 21, 2025 10:36
Copilot AI requested a review from karianna August 21, 2025 10:36
@karianna karianna requested review from steelhead31 and sxa August 21, 2025 10:45
Fix jinja warning on spacing
Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

A block has been put on this Pull Request as this repository is temporarily under a code freeze due to an ongoing release cycle.

If this pull request needs to be merged during the release cycle then please comment /merge and a PMC member will be able to remove the block.

If the code freeze is over you can remove this block by commenting /thaw.

@github-actions
Copy link

yamllint Failed

Show Output
::group::./ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/devkit/tasks/main.yml
::error file=./ansible/playbooks/AdoptOpenJDK_Unix_Playbook/roles/devkit/tasks/main.yml,line=26,col=139::26:139 [trailing-spaces] trailing spaces
::endgroup::

Workflow: Linter, Action: __karancode_yamllint-github-action, Lint: .

@karianna karianna marked this pull request as ready for review October 28, 2025 02:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

✨ Set up Copilot instructions

2 participants