GHE server version: 2.19.2

Reference

https://stackoverflow.com/a/51003334/8163714

Github Webhooks

Setup fail Case

Enterprise - settings - Hooks (not working)

 

Success Case

Set each Organization

 

Github token

Create token

Create a personal token for Jenkins (I used a system account for this job)

I selected all-access, it's the stage test case.

I'll select releated repos access for the production case.

I'll use this key for Jenkins.

 

Set jenkins credential

Use token for Jenkins credential.

 

Install Plugin

Github Plugin

 

GitHub Plugin - Jenkins - Jenkins Wiki

Github Plugin This plugin integrates Jenkins with Github projects.The plugin currently has three major functionalities: Create hyperlinks between your Jenkins projects and GitHubTrigger a job when you push to the repository by groking HTTP POSTs from post-

wiki.jenkins.io

Set jenkins Github server

Set URL & credential.

 

Build Triggers for Jenkins job

 

Set Post-build Actions for Jenkins job

I use default except 'Status result'.

 

 

Setup Result

After PR & Merge, run jenkins and set build status.

 

Build Success

 

Build Failure

 

GHE server version: 2.19.2

Reference

https://github.community/t5/GitHub-Enterprise-Best-Practices/High-Availability-and-Disaster-Recovery-for-GitHub-Enterprise/ba-p/11725

https://help.github.com/en/enterprise/2.19/admin/installation/configuring-github-enterprise-server-for-high-availability

 

Configuring GitHub Enterprise Server for high availability - GitHub Help

Administrator Guides Installation and configuration Configuring GitHub Enterprise Server for high availability Configuring GitHub Enterprise Server for high availability GitHub Enterprise Server supports a high availability mode of operation designed to mi

help.github.com

Create 1 more EC2 instance for GHE image.

Replication server could use same license file.

Select installation type

  • Configure as Replica

After finish setup.

Run command (Replica VM)

  • ghe-repl-setup $PRIMARY_VM_IP_ADDRESS
admin@ip-172-3?-???-???:~$ ghe-repl-setup 172.3?.???.???
Generating public/private ed25519 key pair.
/home/admin/.ssh/id_ed25519 already exists.
Overwrite (y/n)? Your identification has been saved in /home/admin/.ssh/id_ed25519.
Your public key has been saved in /home/admin/.ssh/id_ed25519.pub.
The key fingerprint is:
SHA256:t3C46zQrYB/???????????????????????s1dc/e4Ho admin-ssh-key
The key's randomart image is:
+--[ED25519 256]--+
| o++o. . .       |
|..o.* + . o      |
|.. = O     +     |
|  . * o  .o o    |
|   o * oS.oo .   |
|    B O o=..     |
|   o * *+..E     |
|      =. +.      |
|       o+        |
+----[SHA256]-----+
Connection check failed.
The primary GitHub Enterprise Server appliance must be configured to allow replica access.
Visit http://172.3?.???.???/setup/settings and authorize the following SSH key:

ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJev???????????????????????YEf1Kvx7AyBAduoMe admin-ssh-key

Run `ghe-repl-setup 172.3?.???.???' once the key has been added to continue replica setup

 

Use command result key

  • ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJev?????????????????wYEf1Kvx7AyBAduoMe admin-ssh-key

Visit Primary & add ssh key

  • Visit http://172.3?.???.???/setup/settings and authorize the following SSH key

 

Run command (Replica VM)

  • ghe-repl-setup $PRIMARY_VM_IP_ADDRESS
  • ghe-repl-start
  • ghe-repl-status
admin@ip-172-3?-???-???:$ ghe-repl-setup 172.3?.???.???
Verifying ssh connectivity with 172.3?.???.??? ...
Connection check succeeded.
Updating Elasticsearch configuration ...
Elasticsearch isn't listening on tcp/9200.
Copying license and settings from primary appliance ...
 --> Importing SSH host keys...
 --> The SSH host keys on this appliance have been replaced to match the primary.
 --> Please run 'ssh-keygen -R 172.3X.XX.XXX; ssh-keygen -R "[172.3X.XX.XXX]:122"' on your client to prevent future ssh warnings.
Copying custom CA certificates from primary appliance ...
Success: Replica mode is configured against 172.3?.???.???.
To disable replica mode and undo these changes, run 'ghe-repl-teardown'.
Run 'ghe-repl-start' to start replicating from the newly configured primary.
 
 
 
admin@ip-172-3?-???-???:$ ghe-repl-start
Verifying ssh connectivity with 172.3?.???.??? ...
Updating configuration...
Validating configuration
Updating configuration for githubtest-testserver-io-primary (172.3?.???.???)
Configuration Updated
Configuration Phase 1
githubtest-testserver-io-primary: Dec 04 05:46:52 Preparing storage device...
githubtest-testserver-io-primary: Dec 04 05:46:54 Updating configuration...
githubtest-testserver-io-primary: Dec 04 05:46:55 Reloading system services...
githubtest-testserver-io-primary: Dec 04 05:47:19 Done!
githubtest-testserver-io-replica: Dec 04 05:46:52 Preparing storage device...
githubtest-testserver-io-replica: Dec 04 05:46:54 Updating configuration...
githubtest-testserver-io-replica: Dec 04 05:46:55 Reloading system services...
githubtest-testserver-io-replica: Dec 04 05:48:11 Done!
Configuration Phase 2
githubtest-testserver-io-replica: Dec 04 05:48:12 Running migrations...
githubtest-testserver-io-replica: Dec 04 05:48:12 Done!
githubtest-testserver-io-primary: Dec 04 05:48:12 Running migrations...
githubtest-testserver-io-primary: Dec 04 05:48:28 Done!
Configuration Phase 3
githubtest-testserver-io-primary: Waiting for services to be active...
githubtest-testserver-io-primary: Dec 04 05:48:47 Reloading application services...
githubtest-testserver-io-primary: Dec 04 05:49:10 Done!
githubtest-testserver-io-replica: Dec 04 05:48:30 Reloading application services...
githubtest-testserver-io-replica: Dec 04 05:50:06 Done!
Finished cluster configuration
Success: replication is running for all services.
Run `ghe-repl-status' to monitor replication health and progress.
 
 
 
admin@ip-172-3?-???-???:$ ghe-repl-status
OK: mysql replication is in sync
OK: redis replication is in sync
OK: elasticsearch cluster is in sync
OK: git replication is in sync
OK: pages replication is in sync
OK: alambic replication is in sync
OK: git-hooks replication is in sync
OK: consul replication is in sync

GHE server version: 2.19.2

License

https://enterprise.github.com/dashboard (Free Trial or Purchase license)

After Sign in, click 'Download' on top of the menu.

 

Step 1. Download license

 

Appliance

Step 2. Appliance

Select Cloud vendor & region

I selected AWS & Mumbai region.

 

AWS 'EC2' Dashboard & Click Launch Instance

Search AMI with AMI ID: ami-06e551001e2d40c1a

Set EC2 and launch 

  • Storage add EBS at least 10GB

Install

Read manual 1st.

https://help.github.com/en/enterprise/2.19/admin/installation/installing-github-enterprise-server-on-aws

 

Installing GitHub Enterprise Server on AWS - GitHub Help

Administrator Guides Installation and configuration Setting up a GitHub Enterprise Server instance Installing GitHub Enterprise Server on AWS Installing GitHub Enterprise Server on AWS To install GitHub Enterprise Server on Amazon Web Services (AWS), you m

help.github.com

 

Need to open 122(ssh), 8443(https) TCP port before start setup

 

Upload your license file & set password.

 

Select installation type

  • New Install

 

Route53 add dns

 

set hostname & Test domain settings

 

SSL setup & Click Save settings

 

Finish setup & Click 'Save settings' 

 

After finish setup and hostname not working. Then use this link

 

https://github.com에서 가장 인기 있는 프로젝트를 star 순으로 정렬해서 보고 싶은 경우



github.com의 검색창에서 검색하고 언어 선택


stars:>1



특정 언어까지 선택해서 검색하고 싶으면

예) python으로 구현된 가장 star가 많은 프로젝트 검색


stars:>1 language:python


+ Recent posts