2022-09-01 09:57:41 -07:00
# Configure credentials for Valet
2022-08-10 16:38:31 -07:00
2022-09-01 09:57:41 -07:00
In this lab, you will use the `configure` CLI command to set the required credentials and information for Valet to use when working with Jenkins and GitHub.
2022-08-10 16:38:31 -07:00
2022-09-01 09:57:41 -07:00
You will need to complete all of the setup instructions [here ](./readme.md#configure-your-codespace ) prior to performing this lab.
## Configuring credentials
2022-08-10 16:38:31 -07:00
2022-09-01 09:57:41 -07:00
1. Open the Jenkins server in a new browser tab:
2022-08-10 16:38:31 -07:00
1. Click the `PORTS` tab in the codespace terminal window.
2. In the `PORTS` tab find the row for port 8080.
2022-09-01 09:57:41 -07:00
3. Hover over the address under the `Local Address` column and click the globe to "open in browser".
2022-08-11 15:53:36 -07:00
2022-09-01 09:57:41 -07:00
2. Create a Jenkins API token:
1. Click the `admin` button in the top right menu bar.
2. Click on the `Configure` gear located on the left hand panel.
3. Click the `Add new Token` button in the `API token` section and click `Generate` .
4. Copy the generated API token and save in a safe location.
2022-08-11 15:53:36 -07:00
2022-09-01 09:57:41 -07:00

3. Create a GitHub Personal Access Token (PAT):
1. Open github.com in a new browser tab.
2. Click your profile photo in the top right of the UI and click `Settings` .
3. Click on `Developer Settings` in the left hand panel.
4. Click `Personal Access Tokens` and then `Legacy tokens` (if present).
5. Click `Generate new token` and then `Legacy tokens` . You may be required to authenticate with GitHub during this step.
6. Select the following scopes: `read:packages` and `workflow` .
7. Click `Generate token` .
8. Copy the generated PAT and save in a safe location.
4. Run the `configure` CLI command:
- Select the `TERMINAL` tab from within the codespace terminal window.
- Run the following command: `gh valet configure` .
- Using the down arrow key to highlight `Jenkins` , press the spacebar to select, and then hit enter to continue.
2022-08-10 16:38:31 -07:00
- At the prompt enter your GitHub Username and press enter.
2022-09-01 09:57:41 -07:00
- At the GitHub Container Registry prompt enter the GitHub PAT generated in step 3 and press enter.
- At the GitHub PAT prompt enter the GitHub PAT generated in step 3 and press enter.
- At the GitHub url prompt enter the GitHub instance url or hit enter to accept the default value (`https://github.com` ).
- At the Jenkins token prompt enter the Jenkins access token from step 2 and press enter.
2022-08-10 16:38:31 -07:00
- At the Jenkins url prompt enter `http://localhost:8080/` and press enter.
2022-09-01 09:57:41 -07:00
- At the Personal access token to fetch source code in GitHub prompt hit enter to accept the default value.
2022-09-06 15:39:17 -07:00
2022-09-01 09:57:41 -07:00

2022-08-10 16:38:31 -07:00
2022-09-01 09:57:41 -07:00
## Verify your environment
2022-08-10 16:38:31 -07:00
2022-09-01 10:08:10 -07:00
To verify our environment is configured correctly, we are going to run the `update` CLI command. The `update` CLI command will download the latest version of Valet to your codespace.
2022-08-10 16:38:31 -07:00
2022-09-01 10:08:10 -07:00
1. In the codespace terminal run the following command:
2022-08-10 16:38:31 -07:00
2022-09-01 10:08:10 -07:00
```bash
gh valet update
` ``
2022-08-10 16:38:31 -07:00
2022-09-01 10:08:10 -07:00
2. You should see a confirmation that you were logged into the GitHub Container Registry and Valet was updated to the latest version.
2022-08-10 16:38:31 -07:00
2022-09-01 10:08:10 -07:00
` ``bash
Login Succeeded
latest: Pulling from valet-customers/valet-cli
Digest: sha256:a7d00dee8a37e25da59daeed44b1543f476b00fa2c41c47f48deeaf34a215bbb
Status: Image is up to date for ghcr.io/valet-customers/valet-cli:latest
ghcr.io/valet-customers/valet-cli:latest
` ``
2022-08-10 16:38:31 -07:00
2022-09-06 15:39:17 -07:00
### Next lab
2022-08-10 16:38:31 -07:00
2022-09-01 10:08:10 -07:00
[Perform an audit of a Jenkins server ](2-audit.md#perform-an-audit-of-a-jenkins-server )