Fix all <!-- markdownlint-disable-line fenced-code-language -->
This commit is contained in:
@@ -488,7 +488,7 @@ Run this utility to add a certificate chain for S/MIME commit signature verifica
|
||||
|
||||
Run this utility when {% data variables.location.product_location %} is unable to connect to another server because the latter is using a self-signed SSL certificate or an SSL certificate for which it doesn't provide the necessary CA bundle. One way to confirm this is to run `openssl s_client -connect host:port -verify 0 -CApath /etc/ssl/certs` from {% data variables.location.product_location %}. If the remote server's SSL certificate can be verified, your `SSL-Session` should have a return code of 0, as shown below.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
SSL-Session:
|
||||
Protocol : TLSv1
|
||||
Cipher : AES128-SHA
|
||||
@@ -503,7 +503,7 @@ SSL-Session:
|
||||
|
||||
If, on the other hand, the remote server's SSL certificate can _not_ be verified, your `SSL-Session` should have a nonzero return code:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
SSL-Session:
|
||||
Protocol : TLSv1
|
||||
Cipher : AES128-SHA
|
||||
@@ -846,7 +846,7 @@ This utility helps to analyze Git traffic. It queries _Governor_ data files, loc
|
||||
ghe-governor <subcommand> <column> [options]
|
||||
```
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
ghe-governor -h
|
||||
Usage: ghe-governor [-h] <subcommand> args
|
||||
|
||||
@@ -917,7 +917,7 @@ ghe-actions-precheck -p [PROVIDER] -cs ["CONNECTION-STRING"]
|
||||
|
||||
If your storage system is configured correctly, you'll see the following output.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
All Storage tests passed
|
||||
```
|
||||
|
||||
@@ -988,7 +988,7 @@ ghe-repl-stop
|
||||
|
||||
This utility completely disables replication on an existing replica node, removing the replica configuration. You can run the following command from a replica node, but if the replica node is unreachable, you can also run the command from the primary node.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-repl-teardown
|
||||
```
|
||||
|
||||
|
||||
@@ -80,7 +80,7 @@ Backup snapshots are written to the disk path set by the `GHE_DATA_DIR` data dir
|
||||
|
||||
1. To change into the local repository directory, run the following command.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
cd backup-utils
|
||||
```
|
||||
|
||||
@@ -130,7 +130,7 @@ You can verify the installation method for {% data variables.product.prodname_en
|
||||
{% data reusables.enterprise_backup_utilities.enterprise-backup-utils-directory %}
|
||||
1. To check if a valid working directory exists inside a Git repository, run the following command.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
git rev-parse --is-inside-work-tree
|
||||
```
|
||||
|
||||
@@ -167,27 +167,27 @@ To use Git instead of a compressed archive for upgrades, you must back up your e
|
||||
{% data reusables.enterprise_backup_utilities.enterprise-backup-utils-directory %}
|
||||
1. To back up your existing {% data variables.product.prodname_enterprise_backup_utilities %} configuration, copy your current `backup.config` file to a safe location, such as your home directory.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
cp backup.config $HOME/backup.config.saved-$(date +%Y%m%d-%H%M%S)
|
||||
```
|
||||
|
||||
1. Change to the local directory on your backup host where you want to install the {% data variables.product.prodname_enterprise_backup_utilities %} Git repository.
|
||||
1. To clone the [project repository](https://github.com/github/backup-utils/) to the directory on your backup host, run the following command.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
git clone https://github.com/github/backup-utils.git
|
||||
```
|
||||
|
||||
1. To change into the cloned repository, run the following command.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
cd backup-utils
|
||||
```
|
||||
|
||||
{% data reusables.enterprise_backup_utilities.enterprise-backup-utils-update-repo %}
|
||||
1. To restore your backup configuration from earlier, copy your existing backup configuration file to the local repository directory. Replace the path in the command with the location of the file saved in step 2.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
cp PATH/TO/BACKUP/FROM/STEP/2 backup.config
|
||||
```
|
||||
|
||||
|
||||
@@ -35,7 +35,7 @@ Before configuring {% data variables.product.prodname_dependabot %}, install Doc
|
||||
|
||||
For example, to support npm and {% data variables.product.prodname_actions %} you could use the following commands, copying details of the images to load from the `containers.json` file to ensure that you have the correct version and SHA for each image.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
docker pull ghcr.io/github/dependabot-update-job-proxy/dependabot-update-job-proxy:VERSION@SHA
|
||||
docker pull ghcr.io/dependabot/dependabot-updater-github-actions:VERSION@SHA
|
||||
docker pull ghcr.io/dependabot/dependabot-updater-npm:VERSION@SHA
|
||||
|
||||
@@ -155,7 +155,7 @@ If you need to verify that your inbound email is functioning, you can review `/v
|
||||
|
||||
`/var/log/mail.log` verifies that messages are reaching your server. Here's an example of a successful email reply:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
Oct 30 00:47:18 54-171-144-1 postfix/smtpd[13210]: connect from st11p06mm-asmtp002.mac.com[17.172.124.250]
|
||||
Oct 30 00:47:19 54-171-144-1 postfix/smtpd[13210]: 51DC9163323: client=st11p06mm-asmtp002.mac.com[17.172.124.250]
|
||||
Oct 30 00:47:19 54-171-144-1 postfix/cleanup[13216]: 51DC9163323: message-id=<b2b9c260-4aaa-4a93-acbb-0b2ddda68579@me.com>
|
||||
@@ -169,7 +169,7 @@ Note that the client first connects; then, the queue becomes active. Then, the m
|
||||
|
||||
`/var/log/mail-replies/metroplex.log` shows whether inbound emails are being processed to add to issues and pull requests as replies. Here's an example of a successful message:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
[2014-10-30T00:47:23.306 INFO (5284) #] metroplex: processing <b2b9c260-4aaa-4a93-acbb-0b2ddda68579@me.com>
|
||||
[2014-10-30T00:47:23.333 DEBUG (5284) #] Matched /data/user/mail/reply/new/1414630039.Vfc00I12000eM445784.ghe-tjl2-co-ie
|
||||
[2014-10-30T00:47:23.334 DEBUG (5284) #] Moving /data/user/mail/reply/new/1414630039.Vfc00I12000eM445784.ghe-tjl2-co-ie => /data/user/incoming-mail/success
|
||||
|
||||
@@ -105,13 +105,13 @@ By default, the rate limit for {% data variables.product.prodname_actions %} is
|
||||
|
||||
1. To disable the rate limit after it's been enabled, run the following command.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-config actions-rate-limiting.enabled false
|
||||
```
|
||||
|
||||
1. To apply the configuration, run the following command.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-config-apply
|
||||
```
|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ If any of these services are at or near 100% CPU utilization, or the memory is n
|
||||
|
||||
In the output, find the "Allocated Resources" section. It looks similar to the following example:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
Allocated Resources
|
||||
CPU Memory Disk
|
||||
7740/49600 MHZ 23 GiB/32 GiB 4.4 GiB/7.9 GiB
|
||||
@@ -127,7 +127,7 @@ If any of these services are at or near 100% CPU utilization, or the memory is n
|
||||
- `actions.hcl.ctmpl`
|
||||
1. For the services that you identified that need adjustment, open the corresponding file and locate the `resources` group that looks like the following:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```terraform
|
||||
resources {
|
||||
cpu = 512
|
||||
memory = 2048
|
||||
@@ -141,7 +141,7 @@ If any of these services are at or near 100% CPU utilization, or the memory is n
|
||||
|
||||
For example, to increase the resource limits in the above example to 1 GHz for the CPU and 4 GB of memory, change it to:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```terraform
|
||||
resources {
|
||||
cpu = 1024
|
||||
memory = 4096
|
||||
|
||||
@@ -64,7 +64,7 @@ To configure {% data variables.product.prodname_ghe_server %} to use OIDC with a
|
||||
|
||||
The command returns a thumbprint in the following format:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
SHA1 Fingerprint=AB:12:34:56:78:90:AB:CD:EF:12:34:56:78:90:AB:CD:EF:12:34:56
|
||||
```
|
||||
|
||||
@@ -72,7 +72,7 @@ To configure {% data variables.product.prodname_ghe_server %} to use OIDC with a
|
||||
|
||||
For example, the thumbprint for the value returned in the previous step is:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
AB1234567890ABCDEF1234567890ABCDEF123456
|
||||
```
|
||||
|
||||
|
||||
@@ -65,13 +65,13 @@ To configure {% data variables.product.prodname_ghe_server %} to use OIDC with G
|
||||
- For "Provider name", enter a name for the provider.
|
||||
- For "Issuer (URL)", enter the following URL, replacing `HOSTNAME` with the public hostname for {% data variables.location.product_location_enterprise %}:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
https://HOSTNAME/_services/token
|
||||
```
|
||||
|
||||
For example:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
https://my-ghes-host.example.com/_services/token
|
||||
```
|
||||
|
||||
@@ -83,13 +83,13 @@ To configure {% data variables.product.prodname_ghe_server %} to use OIDC with G
|
||||
- Under "Attribute Conditions", click **Add condition**.
|
||||
- For "Condition CEL", enter the following condition, replacing `HOSTNAME` with the public hostname for {% data variables.location.product_location_enterprise %}:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
google.subject == "HOSTNAME"
|
||||
```
|
||||
|
||||
For example:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
google.subject == "my-ghes-host.example.com"
|
||||
```
|
||||
|
||||
|
||||
@@ -52,7 +52,7 @@ The CPU and memory requirements will depend on the number of concurrent runners
|
||||
|
||||
If you specify more than 14 concurrent runners on a VM, you must also update the Docker `/etc/docker/daemon.json` configuration to increase the default number of networks Docker can create.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```json
|
||||
{
|
||||
"default-address-pools": [
|
||||
{"base":"10.10.0.0/16","size":24}
|
||||
|
||||
@@ -80,7 +80,7 @@ You can populate the runner tool cache by running a {% data variables.product.pr
|
||||
|
||||
After extracting the tool cache artifact uploaded in the above example, you should have a directory structure on your self-hosted runner that is similar to the following example:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
RUNNER_DIR
|
||||
├── ...
|
||||
└── _work
|
||||
|
||||
@@ -67,11 +67,11 @@ The message typically indicates that the person's username or email address has
|
||||
|
||||
If the `Recipient` does not match the ACS URL for {% data variables.location.product_location %}, one of the following two error messages will appear in the authentication log when a user attempts to authenticate.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
Recipient in the SAML response must not be blank.
|
||||
```
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
Recipient in the SAML response was not valid.
|
||||
```
|
||||
|
||||
@@ -81,7 +81,7 @@ Ensure that you set the value for `Recipient` on your IdP to the full ACS URL fo
|
||||
|
||||
If your IdP does not sign the SAML response, or the signature does not match the contents, the following error message will appear in the authentication log.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
SAML Response is not signed or has been modified.
|
||||
```
|
||||
|
||||
@@ -91,7 +91,7 @@ Ensure that you configure signed assertions for the {% data variables.product.pr
|
||||
|
||||
If the IdP's response has a missing or incorrect value for `Audience`, the following error message will appear in the authentication log.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
Audience is invalid. Audience attribute does not match https://YOUR-INSTANCE-URL
|
||||
```
|
||||
|
||||
|
||||
@@ -42,6 +42,6 @@ You can also export Git events data by date range.
|
||||
1. Click {% octicon "file-zip" aria-hidden="true" %} **Download Results**.
|
||||
1. The data is exported as a compressed JSON file. To extract the JSON data, uncompress the file using an archive utility client or command. For example:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
gunzip export-avocado-corp-1642896556.json.gz
|
||||
```
|
||||
|
||||
@@ -58,7 +58,7 @@ Then, include `hashed_token:"VALUE"` in your search phrase, replacing VALUE with
|
||||
|
||||
For example, if the name of the enterprise account is `octo-corp`, the following curl command would search @octo-corp's audit log for all events that are associated with the token whose URI-encoded SHA-256 hash is `EH4L8o6PfCqipALbL%2BQT62lyqUtnI7ql0SPbkaQnjv8`.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
curl --header "Accept: application/vnd.github+json" --header "Authorization: Bearer YOUR-TOKEN" {% data reusables.rest-api.version-header %} 'https://api.github.com/enterprises/octo-corp/audit-log?phrase=hashed_token:"EH4L8o6PfCqipALbL%2BQT62lyqUtnI7ql0SPbkaQnjv8"'
|
||||
```
|
||||
|
||||
|
||||
@@ -111,7 +111,7 @@ For information on creating or accessing your access key ID and secret key, see
|
||||
- Add the permissions policy you created above to allow writes to the bucket.
|
||||
- Edit the trust relationship to add the `sub` field to the validation conditions, replacing `ENTERPRISE` with the name of your enterprise.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```json
|
||||
"Condition": {
|
||||
"StringEquals": {
|
||||
"oidc-configuration.audit-log.githubusercontent.com:aud": "sts.amazonaws.com",
|
||||
|
||||
@@ -48,7 +48,7 @@ curl -H "Authorization: Bearer TOKEN" \
|
||||
|
||||
The query below searches for audit log events created on Jan 1st, 2022 in the `avocado-corp` enterprise, and returns the first page with a maximum of 100 items per page using pagination. For more information about pagination, see "[AUTOTITLE](/rest/guides/using-pagination-in-the-rest-api)." The `--include` flag causes the headers to be returned along with the response.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
curl --include -H "Authorization: Bearer TOKEN" \
|
||||
--request GET \
|
||||
"https://api.github.com/enterprises/avocado-corp/audit-log?phrase=created:2022-01-01&per_page=100"
|
||||
@@ -56,7 +56,7 @@ curl --include -H "Authorization: Bearer TOKEN" \
|
||||
|
||||
If there are more than 100 results, the `link` header will include URLs to fetch the next, first, and previous pages of results.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
link: <https://api.github.com/enterprises/13827/audit-log?%3A2022-11-01=&per_page=100&after=MS42NjQzODMzNTk5MjdlKzEyfDloQzBxdURzaFdVbVlLWjkxRU9mNXc%3D&before=>; rel="next",
|
||||
<https://api.github.com/enterprises/13827/audit-log?%3A2022-11-01=&per_page=100&after=&before=>; rel="first",
|
||||
<https://api.github.com/enterprises/13827/audit-log?%3A2022-11-01=&per_page=100&after=&before=MS42Njc4NDA2MjM4MzNlKzEyfExqeG5sUElvNEZMbG1XZHA5akdKTVE%3D>; rel="prev"
|
||||
|
||||
@@ -24,7 +24,7 @@ To have your CI machines fetch from the repository cache instead of the primary
|
||||
|
||||
For example, the global `.gitconfig` for the CI machine would include these lines.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```gitconfig
|
||||
[url "https://europe-ci.github.example.com/"]
|
||||
insteadOf = https://github.example.com/
|
||||
```
|
||||
@@ -52,7 +52,7 @@ Then, when told to fetch `https://github.example.com/myorg/myrepo`, Git will ins
|
||||
|
||||
- If you're configuring a repository cache in addition to one or more existing replicas, use the `-a` or `--add` argument.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-repl-setup -a PRIMARY-IP
|
||||
```
|
||||
1. To configure the repository cache, use the `ghe-repl-node` command and include the necessary parameters.
|
||||
@@ -60,7 +60,7 @@ Then, when told to fetch `https://github.example.com/myorg/myrepo`, Git will ins
|
||||
- Set a `cache-domain` for the repository cache, replacing _EXTERNAL-CACHE-DOMAIN_ with the hostname Git clients will use to access the repository cache. If you do not specify a `cache-domain`, {% data variables.product.product_name %} will prepend the _CACHE-LOCATION_ value as a subdomain to the hostname configured for your instance. For more information, see "[AUTOTITLE](/admin/configuration/configuring-network-settings/configuring-a-hostname)."
|
||||
- If you haven't already, set the datacenter name on the primary and any replica appliances, replacing DC-NAME with a datacenter name.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-repl-node --datacenter DC-NAME
|
||||
```
|
||||
|
||||
@@ -88,19 +88,19 @@ Data location policies affect only Git content. Content in the database, such as
|
||||
|
||||
You can configure a policy to replicate all networks with the `--default` flag. For example, this command will create a policy to replicate a single copy of every repository network to the set of repository caches whose `cache_location` is "kansas".
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-spokesctl cache-policy set --default 1 kansas
|
||||
```
|
||||
|
||||
To configure replication for a repository network, specify the repository that is the root of the network. A repository network includes a repository and all of the repository's forks. You cannot replicate part of a network without replicating the whole network.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-spokesctl cache-policy set <owner/repository> 1 kansas
|
||||
```
|
||||
|
||||
You can override a policy that replicates all networks and exclude specific networks by specifying a replica count of zero for the network. For example, this command specifies that any repository cache in location "kansas" cannot contain any copies of that network.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-spokesctl cache-policy set <owner/repository> 0 kansas
|
||||
```
|
||||
|
||||
|
||||
@@ -59,7 +59,7 @@ Before you define a secondary datacenter for your replica nodes, ensure that you
|
||||
{% data reusables.enterprise_clustering.open-configuration-file %}
|
||||
1. Note the name of your cluster's primary datacenter. The `[cluster]` section at the top of the cluster configuration file defines the primary datacenter's name, using the `primary-datacenter` key-value pair.
|
||||
|
||||
```shell
|
||||
```text
|
||||
[cluster]
|
||||
mysql-master = HOSTNAME
|
||||
redis-master = HOSTNAME
|
||||
@@ -70,13 +70,13 @@ Before you define a secondary datacenter for your replica nodes, ensure that you
|
||||
|
||||
1. {% data reusables.enterprise_clustering.configuration-file-heading %} Under each node's heading, add a new key-value pair to assign the node to a datacenter. Use the same value as `primary-datacenter` from step 3 above. For example, if you want to use the default name (`default`), add the following key-value pair to the section for each node.
|
||||
|
||||
```shell
|
||||
```text
|
||||
datacenter = primary
|
||||
```
|
||||
|
||||
When you're done, the section for each node in the cluster configuration file should look like the following example. {% data reusables.enterprise_clustering.key-value-pair-order-irrelevant %}
|
||||
|
||||
```shell
|
||||
```text
|
||||
[cluster "HOSTNAME"]
|
||||
datacenter = default
|
||||
hostname = HOSTNAME
|
||||
@@ -89,7 +89,7 @@ Before you define a secondary datacenter for your replica nodes, ensure that you
|
||||
|
||||
**Note**: If you changed the name of the primary datacenter in step 3, find the `consul-datacenter` key-value pair in the section for each node and change the value to the renamed primary datacenter. For example, if you named the primary datacenter `primary`, use the following key-value pair for each node.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
consul-datacenter = primary
|
||||
```
|
||||
|
||||
@@ -122,19 +122,19 @@ For an example configuration, see "[Example configuration](#example-configuratio
|
||||
{% data reusables.enterprise_clustering.ssh-to-a-node %}
|
||||
1. Back up your existing cluster configuration.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
cp /data/user/common/cluster.conf ~/$(date +%Y-%m-%d)-cluster.conf.backup
|
||||
```
|
||||
|
||||
1. Create a copy of your existing cluster configuration file in a temporary location, like `/home/admin/cluster-replica.conf`.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
grep -Ev "(?:|ipv|uuid)" /data/user/common/cluster.conf > ~/cluster-replica.conf
|
||||
```
|
||||
|
||||
1. Remove the `[cluster]` section from the temporary cluster configuration file that you copied in the previous step.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
git config -f ~/cluster-replica.conf --remove-section cluster
|
||||
```
|
||||
|
||||
|
||||
@@ -32,9 +32,9 @@ To fail over to replica nodes, you must have configured high availability replic
|
||||
1. SSH into the primary MySQL node in the replica cluster. For more information, see "[AUTOTITLE](/enterprise/admin/configuration/accessing-the-administrative-shell-ssh#enabling-access-to-the-administrative-shell-via-ssh)."
|
||||
1. To begin the failover to the secondary cluster and configure the nodes to respond to requests, run the following command.
|
||||
|
||||
```shell
|
||||
ghe-cluster-failover
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-cluster-failover
|
||||
```
|
||||
|
||||
{% data reusables.enterprise_clustering.configuration-finished %}
|
||||
1. Update the DNS record to point to the IP address of the load balancer for your replica cluster. After the TTL period expires, requests will be directed to the replica cluster.
|
||||
|
||||
@@ -113,7 +113,7 @@ You can configure [Nagios](https://www.nagios.org/) to monitor {% data variables
|
||||
|
||||
**Example definition**
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
define command {
|
||||
command_name check_ssh_ghe_cluster
|
||||
command_line $USER1$/check_by_ssh -H $HOSTADDRESS$ -C "ghe-cluster-status -n" -l admin -p 122 -t 30
|
||||
@@ -124,7 +124,7 @@ You can configure [Nagios](https://www.nagios.org/) to monitor {% data variables
|
||||
|
||||
**Example definition**
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
define host{
|
||||
use generic-host
|
||||
host_name ghe-data-node-0
|
||||
|
||||
@@ -110,7 +110,7 @@ Configure Geo DNS using the IP addresses of the primary and replica nodes. You c
|
||||
|
||||
For testing, you can add entries to the local workstation's `hosts` file (for example, `/etc/hosts`). These example entries will resolve requests for `HOSTNAME` to `replica2`. You can target specific hosts by commenting out different lines.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
# <primary IP> HOSTNAME
|
||||
# <replica1 IP> HOSTNAME
|
||||
<replica2 IP> HOSTNAME
|
||||
|
||||
@@ -84,7 +84,7 @@ If you've recently configured high availability or geo-replication, the initial
|
||||
|
||||
You can view a specific repository's replication status by connecting to a node and running the following {% ifversion ghe-spokes-deprecation-phase-1 %}commands{% else %}command{% endif %}, replacing OWNER with the repository's owner and REPOSITORY with the repository's name.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
{%- ifversion ghe-spokes-deprecation-phase-1 %}
|
||||
ghe-spokesctl check OWNER/REPOSITORY
|
||||
ghe-spokesctl info OWNER/REPOSITORY
|
||||
@@ -95,7 +95,7 @@ ghe-spokes diagnose OWNER/REPOSITORY
|
||||
|
||||
Alternatively, if you want to view a repository network's replication status, replace NETWORK-ID/REPOSITORY-ID with the network ID and repository ID number.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
{%- ifversion ghe-spokes-deprecation-phase-1 %}
|
||||
ghe-spokesctl check NETWORK-ID/REPOSITORY-ID
|
||||
ghe-spokesctl info NETWORK-ID/REPOSITORY-ID
|
||||
@@ -108,7 +108,7 @@ ghe-spokes diagnose NETWORK-ID/REPOSITORY-ID
|
||||
|
||||
You can view a specific storage object's status by connecting to a node and running the following command, replacing OID with the object's ID.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
ghe-storage info OID
|
||||
```
|
||||
|
||||
|
||||
@@ -49,13 +49,13 @@ All entries from the `audit.log` file use and can be filtered with the `github_a
|
||||
|
||||
For example, this entry shows that a new repository was created.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
Oct 26 01:42:08 github-ent github_audit: {:created_at=>1351215728326, :actor_ip=>"10.0.0.51", :data=>{}, :user=>"some-user", :repo=>"some-user/some-repository", :actor=>"some-user", :actor_id=>2, :user_id=>2, :action=>"repo.create", :repo_id=>1, :from=>"repositories#create"}
|
||||
```
|
||||
|
||||
This example shows that commits were pushed to a repository.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
Oct 26 02:19:31 github-ent github_audit: { "pid":22860, "ppid":22859, "program":"receive-pack", "git_dir":"/data/repositories/some-user/some-repository.git", "hostname":"github-ent", "pusher":"some-user", "real_ip":"10.0.0.51", "user_agent":"git/1.7.10.4", "repo_id":1, "repo_name":"some-user/some-repository", "transaction_id":"b031b7dc7043c87323a75f7a92092ef1456e5fbaef995c68", "frontend_ppid":1, "repo_public":true, "user_name":"some-user", "user_login":"some-user", "frontend_pid":18238, "frontend":"github-ent", "user_email":"some-user@github.example.com", "user_id":2, "pgroup":"github-ent_22860", "status":"post_receive_hook", "features":" report-status side-band-64k", "received_objects":3, "receive_pack_size":243, "non_fast_forward":false, "current_ref":"refs/heads/main" }
|
||||
```
|
||||
|
||||
|
||||
@@ -267,7 +267,7 @@ To upgrade an instance that comprises multiple nodes using an upgrade package, y
|
||||
|
||||
**Note:** While the resync is in progress `ghe-repl-status` may indicate that replication is behind. For example, you may see the following message.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
CRITICAL: git replication is behind the primary by more than 1007 repositories and/or gists
|
||||
```
|
||||
|
||||
|
||||
@@ -122,7 +122,7 @@ For more information about your options, see the official [MinIO docs](https://d
|
||||
|
||||
To finish configuring storage for {% data variables.product.prodname_registry %}, you'll need to copy the MinIO storage URL:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
echo "http://${MINIO_ACCESS_KEY}:${MINIO_SECRET_KEY}@minioclustername.example.com:9000"
|
||||
```
|
||||
|
||||
|
||||
@@ -289,7 +289,7 @@ Enabling anonymous Git read access allows users to bypass authentication for cus
|
||||
|
||||
Anonymous Git read access is disabled by default.{% ifversion ghes = 3.6 or ghes = 3.7 %} When you upgrade to {% data variables.product.product_name %} 3.6 or later, anonymous Git read access is automatically disabled at the application level, and `git://` connections on port 9418 will return the following error.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```text
|
||||
The unauthenticated git protocol on port 9418 is no longer supported.
|
||||
```
|
||||
|
||||
|
||||
@@ -27,7 +27,7 @@ You can use a Linux container management tool to build a pre-receive hook enviro
|
||||
{% data reusables.linux.ensure-docker %}
|
||||
1. Create the file `Dockerfile.alpine` that contains this information:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```dockerfile
|
||||
FROM alpine:latest
|
||||
RUN apk add --no-cache git bash
|
||||
```
|
||||
|
||||
@@ -25,7 +25,7 @@ A pre-receive hook script executes in a pre-receive hook environment on {% data
|
||||
|
||||
After a push occurs and before any refs are updated for the remote repository, the `git-receive-pack` process on {% data variables.location.product_location %} invokes the pre-receive hook script. Standard input for the script, `stdin`, is a string containing a line for each ref to update. Each line contains the old object name for the ref, the new object name for the ref, and the full name of the ref.
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
<old-value> SP <new-value> SP <ref-name> LF
|
||||
```
|
||||
|
||||
@@ -180,7 +180,7 @@ You can test a pre-receive hook script locally before you create or update it on
|
||||
|
||||
1. Create a test pre-receive script called `always_reject.sh`. This example script will reject all pushes, which is useful for locking a repository:
|
||||
|
||||
``` <!-- markdownlint-disable-line fenced-code-language -->
|
||||
```shell
|
||||
#!/usr/bin/env bash
|
||||
|
||||
echo "error: rejecting all pushes"
|
||||
|
||||
Reference in New Issue
Block a user