Skip to content

Commit

Permalink
Merge branch 'main' into patch-1
Browse files Browse the repository at this point in the history
  • Loading branch information
cmwilson21 committed May 22, 2023
2 parents 06eb9c1 + e789adb commit a2c7411
Show file tree
Hide file tree
Showing 35 changed files with 652 additions and 384 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -46,14 +46,6 @@ Third-party systems can be observability systems, change management systems, cod

{% endif %}

{% ifversion fpt %}
{% note %}

**Note:** Deployment protection rules are only available in **public** repositories if you are using {% data variables.product.prodname_free_user %}, {% data variables.product.prodname_pro %}, or {% data variables.product.prodname_team %}. For access to deployment protection rules in **private** or **internal** repositories, you must use {% data variables.product.prodname_pro %}, {% data variables.product.prodname_team %}, or {% data variables.product.prodname_enterprise %}. For more information on switching your subscription, see "[AUTOTITLE](/billing/managing-billing-for-your-github-account/upgrading-your-github-subscription)."

{% endnote %}
{% endif %}

### Required reviewers

Use required reviewers to require a specific person or team to approve workflow jobs that reference the environment. You can list up to six users or teams as reviewers. The reviewers must have at least read access to the repository. Only one of the required reviewers needs to approve the job for it to proceed.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ Any workflow that is converted by the {% data variables.product.prodname_actions
You can use {% data variables.product.prodname_actions_importer %} to migrate from the following platforms:

- Azure DevOps
- Bamboo
- CircleCI
- GitLab
- Jenkins
Expand Down Expand Up @@ -83,6 +84,7 @@ Description:

Commands:
azure-devops An audit will output a list of data used in an Azure DevOps instance.
bamboo An audit will output a list of data used in a Bamboo instance.
circle-ci An audit will output a list of data used in a CircleCI instance.
gitlab An audit will output a list of data used in a GitLab instance.
jenkins An audit will output a list of data used in a Jenkins instance.
Expand All @@ -104,6 +106,7 @@ Description:

Commands:
azure-devops Forecasts GitHub Actions usage from historical Azure DevOps pipeline utilization.
bamboo Forecasts GitHub Actions usage from historical Bamboo pipeline utilization.
jenkins Forecasts GitHub Actions usage from historical Jenkins pipeline utilization.
gitlab Forecasts GitHub Actions usage from historical GitLab pipeline utilization.
circle-ci Forecasts GitHub Actions usage from historical CircleCI pipeline utilization.
Expand All @@ -126,6 +129,7 @@ Description:

Commands:
azure-devops Convert an Azure DevOps pipeline to a GitHub Actions workflow and output its yaml file.
bamboo Convert a Bamboo pipeline to GitHub Actions workflows and output its yaml file.
circle-ci Convert a CircleCI pipeline to GitHub Actions workflows and output the yaml file(s).
gitlab Convert a GitLab pipeline to a GitHub Actions workflow and output the yaml file.
jenkins Convert a Jenkins job to a GitHub Actions workflow and output its yaml file.
Expand All @@ -147,6 +151,7 @@ Description:

Commands:
azure-devops Convert an Azure DevOps pipeline to a GitHub Actions workflow and open a pull request with the changes.
bamboo Convert a Bamboo pipeline to GitHub Actions workflows and open a pull request with the changes.
circle-ci Convert a CircleCI pipeline to GitHub Actions workflows and open a pull request with the changes.
gitlab Convert a GitLab pipeline to a GitHub Actions workflow and open a pull request with the changes.
jenkins Convert a Jenkins job to a GitHub Actions workflow and open a pull request with the changes.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ children:
- /extending-github-actions-importer-with-custom-transformers
- /supplemental-arguments-and-settings
- /migrating-from-azure-devops-with-github-actions-importer
- /migrating-from-bamboo-with-github-actions-importer
- /migrating-from-circleci-with-github-actions-importer
- /migrating-from-gitlab-with-github-actions-importer
- /migrating-from-jenkins-with-github-actions-importer
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -141,60 +141,7 @@ gh actions-importer audit azure-devops --output-dir tmp/audit
### Inspecting the audit results
The files in the specified output directory contain the results of the audit. See the `audit_summary.md` file for a summary of the audit results.
The audit summary has the following sections.
#### Pipelines
The "Pipelines" section contains high-level statistics regarding the conversion rate done by {% data variables.product.prodname_actions_importer %}.
Listed below are some key terms that can appear in the "Pipelines" section:
- **Successful** pipelines had 100% of the pipeline constructs and individual items converted automatically to their {% data variables.product.prodname_actions %} equivalent.
- **Partially successful** pipelines had all of the pipeline constructs converted, however, there were some individual items that were not converted automatically to their {% data variables.product.prodname_actions %} equivalent.
- **Unsupported** pipelines are definition types that are not supported by {% data variables.product.prodname_actions_importer %}.
- **Failed** pipelines encountered a fatal error when being converted. This can occur for one of three reasons:
- The pipeline was misconfigured and not valid in Azure DevOps.
- {% data variables.product.prodname_actions_importer %} encountered an internal error when converting it.
- There was an unsuccessful network response that caused the pipeline to be inaccessible, which is often due to invalid credentials.
#### Build steps
The "Build steps" section contains an overview of individual build steps that are used across all pipelines, and how many were automatically converted by {% data variables.product.prodname_actions_importer %}.
Listed below are some key terms that can appear in the "Build steps" section:
- A **known** build step is a step that was automatically converted to an equivalent action.
- An **unknown** build step is a step that was not automatically converted to an equivalent action.
- An **unsupported** build step is a step that is either:
- Fundamentally not supported by {% data variables.product.prodname_actions %}.
- Configured in a way that is incompatible with {% data variables.product.prodname_actions %}.
- An **action** is a list of the actions that were used in the converted workflows. This can be important for:
- Gathering the list of actions to sync to your instance if you use {% data variables.product.prodname_ghe_server %}.
- Defining an organization-level allowlist of actions that are used. This list of actions is a comprehensive list of actions that your security or compliance teams may need to review.
#### Manual tasks
The "Manual tasks" section contains an overview of tasks that {% data variables.product.prodname_actions_importer %} is not able to complete automatically, and that you must complete manually.
Listed below are some key terms that can appear in the "Manual tasks" section:
- A **secret** is a repository or organization-level secret that is used in the converted pipelines. These secrets must be created manually in {% data variables.product.prodname_actions %} for these pipelines to function properly. For more information, see "[AUTOTITLE](/actions/security-guides/encrypted-secrets)."
- A **self-hosted runner** refers to a label of a runner that is referenced in a converted pipeline that is not a {% data variables.product.prodname_dotcom %}-hosted runner. You will need to manually define these runners for these pipelines to function properly.
#### Files
The final section of the audit report provides a manifest of all the files that were written to disk during the audit.
Each pipeline file has a variety of files included in the audit, including:
- The original pipeline as it was defined in {% data variables.product.prodname_dotcom %}.
- Any network responses used to convert the pipeline.
- The converted workflow file.
- Stack traces that can be used to troubleshoot a failed pipeline conversion.
Additionally, the `workflow_usage.csv` file contains a comma-separated list of all actions, secrets, and runners that are used by each successfully converted pipeline. This can be useful for determining which workflows use which actions, secrets, or runners, and can be useful for performing security reviews.
{% data reusables.actions.gai-inspect-audit %}
## Forecast potential {% data variables.product.prodname_actions %} usage
Expand Down Expand Up @@ -228,7 +175,7 @@ Additionally, these metrics are defined for each queue of runners in Azure DevOp
You can use the `dry-run` command to convert an Azure DevOps pipeline to an equivalent {% data variables.product.prodname_actions %} workflow. A dry run creates the output files in a specified directory, but does not open a pull request to migrate the pipeline.
If there is anything that {% data variables.product.prodname_actions_importer %} was not able to convert automatically, such as unknown build steps or a partially successful pipeline, you might want to create custom transformers to further customize the conversion process. For more information, see "[AUTOTITLE](/actions/migrating-to-github-actions/automated-migrations/extending-github-actions-importer-with-custom-transformers)."
{% data reusables.actions.gai-custom-transformers-rec %}
### Running the dry-run command for a build pipeline
Expand Down Expand Up @@ -286,24 +233,15 @@ $ gh actions-importer migrate azure-devops release --target-url https://github.c
[2022-08-20 22:08:20] Pull request: 'https://github.com/octo-org/octo-repo/pull/1'
```
### Inspecting the pull request
The output from a successful run of the `migrate` command contains a link to the new pull request that adds the converted workflow to your repository.
Some important elements of the pull request include:
- In the pull request description, a section called **Manual steps**, which lists steps that you must manually complete before you can finish migrating your pipelines to {% data variables.product.prodname_actions %}. For example, this section might tell you to create any secrets used in your workflows.
- The converted workflows file. Select the **Files changed** tab in the pull request to view the workflow file that will be added to your {% data variables.product.product_name %} repository.
When you are finished inspecting the pull request, you can merge it to add the workflow to your {% data variables.product.product_name %} repository.
{% data reusables.actions.gai-inspect-pull-request %}
## Reference
This section contains reference information on environment variables, optional arguments, and supported syntax when using {% data variables.product.prodname_actions_importer %} to migrate from Azure DevOps.
### Configuration environment variables
We recommend maintaining the inputs to {% data variables.product.prodname_actions_importer %} with environment variables. You can set these variables by following the configuration process using the `configure` command. For more information, see the "[Configuring credentials](#configuring-credentials)" section.
{% data reusables.actions.gai-config-environment-variables %}
{% data variables.product.prodname_actions_importer %} uses the following environment variables to connect to your Azure DevOps instance:
Expand All @@ -325,7 +263,7 @@ These environment variables can be specified in a `.env.local` file that is load
### Optional arguments
There are optional arguments you can use with the {% data variables.product.prodname_actions_importer %} subcommands to customize your migration.
{% data reusables.actions.gai-optional-arguments-intro %}
#### `--source-file-path`
Expand Down
Loading

0 comments on commit a2c7411

Please sign in to comment.