62 lines
		
	
	
	
		
			887 B
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
	
		
			887 B
		
	
	
	
		
			YAML
		
	
	
	
	
	
---
 | 
						|
stages:
 | 
						|
  - test
 | 
						|
  - build
 | 
						|
  - publish
 | 
						|
 | 
						|
 | 
						|
default:
 | 
						|
 | 
						|
tests:
 | 
						|
  stage: test
 | 
						|
  image: rust
 | 
						|
  before_script:
 | 
						|
    - rustc --version
 | 
						|
    - cargo --version
 | 
						|
    - rustup component add rustfmt
 | 
						|
  script:
 | 
						|
    - cargo fmt --check
 | 
						|
    - cargo test
 | 
						|
 | 
						|
build:amd64:
 | 
						|
  stage: build
 | 
						|
  image: rust
 | 
						|
  before_script:
 | 
						|
    - rustc --version
 | 
						|
    - cargo --version
 | 
						|
  script:
 | 
						|
    - cargo build --release
 | 
						|
  artifacts:
 | 
						|
    paths:
 | 
						|
      - target/release/immich-tools
 | 
						|
 | 
						|
rustdoc:
 | 
						|
  stage: build
 | 
						|
  image: rust
 | 
						|
  before_script:
 | 
						|
    - rustc --version
 | 
						|
    - cargo --version
 | 
						|
  script:
 | 
						|
    - cargo doc
 | 
						|
  artifacts:
 | 
						|
    paths:
 | 
						|
      - target/doc
 | 
						|
 | 
						|
pages:
 | 
						|
  stage: publish
 | 
						|
  image: alpine
 | 
						|
  dependencies:
 | 
						|
    - build:amd64
 | 
						|
    - rustdoc
 | 
						|
  script:
 | 
						|
    - mkdir -p public
 | 
						|
    - mv target/doc public/doc
 | 
						|
    - mv target/release/immich-tools public/immich-tools-amd64
 | 
						|
  artifacts:
 | 
						|
    paths:
 | 
						|
      - public
 | 
						|
  only:
 | 
						|
    - main
 | 
						|
...
 | 
						|
 | 
						|
 |