Add CI stuff
This commit is contained in:
		
							
								
								
									
										79
									
								
								.gitlab-ci.yml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										79
									
								
								.gitlab-ci.yml
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,79 @@
 | 
				
			|||||||
 | 
					#
 | 
				
			||||||
 | 
					# This guy is awesome: https://dev.to/bzinoun/gitlab-ci-to-build-and-push-containers-to-registry-538a
 | 
				
			||||||
 | 
					#
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					image: morlay/buildx:607a2ce
 | 
				
			||||||
 | 
					variables:
 | 
				
			||||||
 | 
					  # DinD's vfs driver is pretty intensive; this is less so
 | 
				
			||||||
 | 
					  DOCKER_DRIVER: overlay2
 | 
				
			||||||
 | 
					  CI_HUB_USERNAME: rehashedsalt
 | 
				
			||||||
 | 
					stages:
 | 
				
			||||||
 | 
					  - build
 | 
				
			||||||
 | 
					#  - test
 | 
				
			||||||
 | 
					  - push
 | 
				
			||||||
 | 
					services:
 | 
				
			||||||
 | 
					  - docker:dind
 | 
				
			||||||
 | 
					before_script:
 | 
				
			||||||
 | 
					  - echo -n "$CI_LOGIN_PASSWORD" | docker login -u "$CI_LOGIN_USERNAME" --password-stdin
 | 
				
			||||||
 | 
					  - docker version
 | 
				
			||||||
 | 
					  - docker info
 | 
				
			||||||
 | 
					after_script:
 | 
				
			||||||
 | 
					  - docker logout hub.docker.com
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# BUILD
 | 
				
			||||||
 | 
					Build:
 | 
				
			||||||
 | 
					  stage: build
 | 
				
			||||||
 | 
					  script:
 | 
				
			||||||
 | 
					    - docker pull $CI_HUB_USERNAME/$CI_PROJECT_NAME:latest || true
 | 
				
			||||||
 | 
					    - docker buildx create --use
 | 
				
			||||||
 | 
					    - >
 | 
				
			||||||
 | 
					      docker buildx build
 | 
				
			||||||
 | 
					      --pull
 | 
				
			||||||
 | 
					      --platform linux/amd64,linux/arm64
 | 
				
			||||||
 | 
					      --cache-from $CI_HUB_USERNAME/$CI_PROJECT_NAME:latest
 | 
				
			||||||
 | 
					      --tag $CI_HUB_USERNAME/$CI_PROJECT_NAME:$CI_COMMIT_SHORT_SHA
 | 
				
			||||||
 | 
					      --push
 | 
				
			||||||
 | 
					      .
 | 
				
			||||||
 | 
					    - docker images
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# TEST
 | 
				
			||||||
 | 
					# TODO: Fix this
 | 
				
			||||||
 | 
					#Test_HTTP_200:
 | 
				
			||||||
 | 
					#  stage: test
 | 
				
			||||||
 | 
					#  script:
 | 
				
			||||||
 | 
					#    - apk add curl
 | 
				
			||||||
 | 
					#    - docker run -d -p 8889:80 $CI_HUB_USERNAME/$CI_PROJECT_NAME:$CI_COMMIT_SHORT_SHA
 | 
				
			||||||
 | 
					#    - sleep 10
 | 
				
			||||||
 | 
					#    - docker ps
 | 
				
			||||||
 | 
					#    - netstat -tulpn
 | 
				
			||||||
 | 
					#    - curl localhost:8889 | grep -ie '200 OK'
 | 
				
			||||||
 | 
					#    - docker kill $(docker ps -q)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					# PUSH
 | 
				
			||||||
 | 
					Push_When_Tag:
 | 
				
			||||||
 | 
					  stage: push
 | 
				
			||||||
 | 
					  only:
 | 
				
			||||||
 | 
					    - tags
 | 
				
			||||||
 | 
					  script:
 | 
				
			||||||
 | 
					    - docker pull $CI_HUB_USERNAME/$CI_PROJECT_NAME:$CI_COMMIT_SHORT_SHA
 | 
				
			||||||
 | 
					    - >
 | 
				
			||||||
 | 
					      docker tag
 | 
				
			||||||
 | 
					      $CI_HUB_USERNAME/$CI_PROJECT_NAME:$CI_COMMIT_SHORT_SHA
 | 
				
			||||||
 | 
					      $CI_HUB_USERNAME/$CI_PROJECT_NAME:$CI_COMMIT_REF_NAME
 | 
				
			||||||
 | 
					    - >
 | 
				
			||||||
 | 
					      docker tag
 | 
				
			||||||
 | 
					      $CI_HUB_USERNAME/$CI_PROJECT_NAME:$CI_COMMIT_SHORT_SHA
 | 
				
			||||||
 | 
					      $CI_HUB_USERNAME/$CI_PROJECT_NAME:latest
 | 
				
			||||||
 | 
					    - docker images
 | 
				
			||||||
 | 
					    - docker push $CI_HUB_USERNAME/$CI_PROJECT_NAME:$CI_COMMIT_REF_NAME
 | 
				
			||||||
 | 
					    - docker push $CI_HUB_USERNAME/$CI_PROJECT_NAME:latest
 | 
				
			||||||
 | 
					Push_Bleeding:
 | 
				
			||||||
 | 
					  stage: push
 | 
				
			||||||
 | 
					  script:
 | 
				
			||||||
 | 
					    - docker pull $CI_HUB_USERNAME/$CI_PROJECT_NAME:$CI_COMMIT_SHORT_SHA
 | 
				
			||||||
 | 
					    - >
 | 
				
			||||||
 | 
					      docker tag
 | 
				
			||||||
 | 
					      $CI_HUB_USERNAME/$CI_PROJECT_NAME:$CI_COMMIT_SHORT_SHA
 | 
				
			||||||
 | 
					      $CI_HUB_USERNAME/$CI_PROJECT_NAME:bleeding
 | 
				
			||||||
 | 
					    - docker images
 | 
				
			||||||
 | 
					    - docker push $CI_HUB_USERNAME/$CI_PROJECT_NAME:bleeding
 | 
				
			||||||
							
								
								
									
										3
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								Dockerfile
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					FROM php:7-apache
 | 
				
			||||||
 | 
					COPY ./ /var/www/html/
 | 
				
			||||||
 | 
					EXPOSE 80
 | 
				
			||||||
		Reference in New Issue
	
	Block a user