Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
7 changes: 6 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -51,4 +51,9 @@ ENV/
.env.*.local

# Scratch folder
scratch/
scratch/
# APM: generated / compiled output — produced on demand by `apm install` / `apm pack`.
# The committed source of truth is the primitives under `plugin/` and `agents/` plus `apm.yml`.
apm_modules/
build/
.agents/
34 changes: 34 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,6 +97,40 @@ cd actions-migrations-via-copilot
copilot plugin install ./plugin
```

### Option C — Install via APM (pinned, hashed, auditable) *(experimental)*

Use this when you need reproducible installs with lockfile-pinned versions, content-integrity scanning, SBOM export, or **offline agent runtime** — typical for regulated industries. Install itself still requires network access to fetch the CLI and the pinned package, but once `apm install` resolves the dependency, all primitives land on disk in your repo — so the agent's runtime never fetches from a marketplace or plugin cache.

Install the [APM CLI](https://microsoft.github.io/apm/) once:

```bash
# macOS / Linux
curl -sSL https://aka.ms/apm-unix | sh
```

```powershell
# Windows
irm https://aka.ms/apm-windows | iex
```

Add the dependency to your project's `apm.yml`:

```yaml
dependencies:
apm:
- github/actions-migrations-via-copilot/plugin#v1.2.0
```

The `/plugin` suffix is a **virtual path** — it points APM at the [`plugin/`](plugin/) subdirectory where `plugin.json` lives, so APM treats this repo as a *Plugin collection* package type ([APM docs](https://microsoft.github.io/apm/reference/package-types/#plugin-collection-pluginjson)) and dissects `plugin.json` to install the agents and skills.

Then run:

```bash
apm install
```

APM deploys the agents and skills into your repo, pins the resolved sources and content hashes in `apm.lock.yaml`, and content-scans every primitive before it reaches disk.

---

## How Migration Works
Expand Down
31 changes: 31 additions & 0 deletions apm.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: actions-migrator
version: 1.2.0
description: Enterprise-grade GitHub Copilot agents that migrate CI/CD pipelines
from Jenkins, Azure DevOps, CircleCI, GitLab, Travis CI, Bamboo, Bitbucket
Pipelines, and Drone CI to GitHub Actions.
author: GitHub Professional Services
repository: https://github.com/github/actions-migrations-via-copilot
homepage: https://github.com/github/actions-migrations-via-copilot
license: MIT
keywords:
- github-actions
- ci-cd
- migration
- jenkins
- azure-devops
- circleci
- gitlab
- travis-ci
- bamboo
- bitbucket
- drone-ci
- reusable-workflows
targets:
- copilot
includes: auto
dependencies:
apm: []
mcp: []
devDependencies:
apm: []
scripts: {}