Skip to content

Conversation

Copy link
Contributor

Copilot AI commented Dec 2, 2025

  • Create .github/workflows directory structure
  • Create lint workflow (PhpStan, Drupal coding standard, shellcheck)
  • Create test workflow (Functional tests with DDEV)
  • Create deploy workflow for QA environment
  • Create deploy workflow for TEST environment (tags without "live")
  • Create deploy workflow for LIVE environment (tags with "live")
  • Update README.md to reference GitHub Actions instead of Travis CI
  • Update ci-scripts/prepare_deploy.sh for GitHub Actions only
  • Update RoboFile to support GitHub Actions in deployment
  • Validate workflow syntax
  • Fix security issues (commit message injection)
  • Use ubuntu-22.04 instead of ubuntu-24.04
  • Remove all Travis CI files (.travis.yml, .travis.template.yml, travis-key.enc)
  • Remove all Travis references from codebase
  • Rename travis-key to deploy-key throughout
  • Update environment variables (TRAVIS_COMMIT_MESSAGE → GITHUB_COMMIT_MESSAGE)
  • Remove Travis compatibility shims from workflows
  • Address all code review feedback
  • Add error handling for openssl commands
  • Add fallback for commit messages in workflows
  • Update documentation to remove Travis references
  • Add explicit workflow permissions (security best practice)
  • Change PANTHEON_GIT_URL and ROLLBAR_SERVER_TOKEN to repository variables instead of secrets
  • Revert deployNotify method to use curl/GitHub API instead of gh CLI
Original prompt

This section details on the original issue you should resolve

<issue_title>Replace Travis CI with GH actions</issue_title>
<issue_description>We can use https://github.com/ddev/github-action-setup-ddev </issue_description>

Comments on the Issue (you are @copilot in this section)


💡 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.

Copilot AI and others added 8 commits December 2, 2025 19:15
Co-authored-by: amitaibu <125707+amitaibu@users.noreply.github.com>
Co-authored-by: amitaibu <125707+amitaibu@users.noreply.github.com>
Co-authored-by: amitaibu <125707+amitaibu@users.noreply.github.com>
Co-authored-by: amitaibu <125707+amitaibu@users.noreply.github.com>
Co-authored-by: amitaibu <125707+amitaibu@users.noreply.github.com>
Co-authored-by: amitaibu <125707+amitaibu@users.noreply.github.com>
Co-authored-by: amitaibu <125707+amitaibu@users.noreply.github.com>
Co-authored-by: amitaibu <125707+amitaibu@users.noreply.github.com>
Copilot AI changed the title [WIP] Replace Travis CI with GitHub Actions Replace Travis CI with GitHub Actions Dec 2, 2025
Copilot AI requested a review from amitaibu December 2, 2025 19:37
AronNovak and others added 5 commits December 5, 2025 14:08
- Replace manual curl GitHub API calls with gh CLI commands in DeploymentTrait
  - gh pr view for fetching PR data
  - gh repo view for checking repo visibility
  - gh issue comment for posting comments
- Remove unused docker_mirror_url parameter from BootstrapTrait
- Remove unused $github_token variable (gh CLI uses GITHUB_TOKEN env var automatically)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
AronNovak and others added 8 commits December 13, 2025 07:08
Create unified ci.yml workflow consolidating all CI/CD jobs.
Rename deploy-key to pantheon-key for clarity.
Fix TRAVIS_TAG references in check_live_deploy.sh.

Changes:
- Create .github/workflows/ci.yml with unified CI/CD pipeline
- Update ci-scripts/check_live_deploy.sh: TRAVIS_TAG → GITHUB_REF_NAME
- Update ci-scripts/prepare_deploy.sh: deploy-key → pantheon-key
- Update robo-components/DeploymentTrait.php: excludes and deployment comment
- Update .gitignore: add pantheon-key references

Based on jep-cjil PRs #10 and #11.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
@amitaibu
Copy link
Member

Ready for review?

@AronNovak AronNovak marked this pull request as ready for review January 24, 2026 04:30
@AronNovak
Copy link
Member

@copilot At .github/workflows/deploy.yml, make PANTHEON_GIT_URL and ROLLBAR_SERVER_TOKEN as regular environment variables, not secrets, to save time. Those are not confidential actually.

Co-authored-by: AronNovak <114076+AronNovak@users.noreply.github.com>
Copy link
Contributor Author

Copilot AI commented Jan 24, 2026

@copilot At .github/workflows/deploy.yml, make PANTHEON_GIT_URL and ROLLBAR_SERVER_TOKEN as regular environment variables, not secrets, to save time. Those are not confidential actually.

Done in 2f5dd5a. Changed PANTHEON_GIT_URL and ROLLBAR_SERVER_TOKEN from secrets to repository variables (using vars.* instead of secrets.*) in all three deploy jobs. Also updated the README to clarify that these should be set as GitHub Variables rather than Secrets.

// Retrieve the issue number from the PR description via GitHub CLI.
$pr_number = $pr_matches[1][0];
$pr = $this->taskExec("curl -H \"Authorization: token $github_token\" https://api.github.com/repos/" . self::$githubProject . "/pulls/$pr_number")
$pr_body = $this->taskExec("gh pr view $pr_number --json body --jq .body")
Copy link
Member

Choose a reason for hiding this comment

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

@copilot deployNotify - here please revert the changes, we cannot assume that gh CLI is installed

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Reverted in 290fff7. The deployNotify method now uses curl with GitHub API instead of gh CLI. Changes:

  • PR retrieval: gh pr viewcurl to GitHub API /pulls/{pr_number}
  • Repo privacy check: gh repo viewcurl to GitHub API /repos/{owner}/{repo}
  • Comment posting: gh issue commentcurl -X POST to GitHub API /issues/{issue_number}/comments

Copy link
Member

Choose a reason for hiding this comment

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

@AronNovak When wouldn't gh be present?

Copy link
Member

@AronNovak AronNovak Jan 27, 2026

Choose a reason for hiding this comment

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

@amitaibu Inside GH Actions pipeline + DDEV, when we do deployment notifications, gh CLI is not present.
For sure using curl is more error-prone. Installing gh CLI is slow and it means one more external dependency to the process. That's why I decided to revert this, it is out of scope here, GitHub notifier rework is not part of the GH Actions migration.

Co-authored-by: AronNovak <114076+AronNovak@users.noreply.github.com>
@amitaibu
Copy link
Member

Shouldn't ROLLBAR_SERVER_TOKEN remain secret?

@AronNovak
Copy link
Member

ROLLBAR_SERVER_TOKEN

This is just a dummy token that we use to persuade Rollbar module to try to communicate with the API for the sake of memory pressure test.

@AronNovak
Copy link
Member

@amitaibu This is ready for review, then we can do a follow-up PR to take care of the process of bootstrapping a new project from zero.

Copy link
Member

@amitaibu amitaibu left a comment

Choose a reason for hiding this comment

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

👌 Thanks

@AronNovak AronNovak merged commit 2e51058 into main Jan 27, 2026
4 checks passed
@AronNovak AronNovak deleted the copilot/replace-travis-ci-with-gh-actions branch January 27, 2026 07:38
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.

Replace Travis CI with GH actions [2h]

3 participants