try to build release plume&plm on ci (#528)
ref Plume-org/docs#27 I should archive the artifacts before uploading
This commit is contained in:
		
							parent
							
								
									0d708e1639
								
							
						
					
					
						commit
						3d82265b85
					
				| @ -90,6 +90,21 @@ aliases: | ||||
|         - ~/.cargo/ | ||||
|         - target | ||||
| 
 | ||||
|   - &restore_cache_release | ||||
|     restore_cache: | ||||
|       keys: | ||||
|         - v1-plume-release-{{ checksum "Cargo.lock" }} | ||||
|         - v1-plume-release | ||||
|         - v1-plume-notest-{{ checksum "Cargo.lock" }} | ||||
|         - v1-plume-notest | ||||
|   - &save_cache_release | ||||
|     save_cache: | ||||
|       key: v1-plume-release-{{ checksum "Cargo.lock" }} | ||||
|       paths: | ||||
|         - ~/.cargo | ||||
|         - target/release | ||||
|         - target/wasm32-unknown-unknown/release | ||||
| 
 | ||||
|   - &restore_cache_plume_dead_code | ||||
|     restore_cache: | ||||
|       keys: | ||||
| @ -161,6 +176,26 @@ aliases: | ||||
|           command: ./script/upload_coverage.sh integration | ||||
|       - *save_cache_plume_dead_code | ||||
| 
 | ||||
|   - &release | ||||
|     steps: | ||||
|       - *attach_workspace | ||||
|       - *restore_cache_release | ||||
|       - run: | ||||
|           name: build frontend | ||||
|           command: cargo web deploy -p plume-front --release | ||||
|       - run: | ||||
|           name: build server | ||||
|           command: cargo build --release --no-default-features --features="${FEATURES}" || cargo build --release --no-default-features --features="${FEATURES}" | ||||
|       - run: | ||||
|           name: build plm | ||||
|           command: cargo build --release --no-default-features --features="${FEATURES}" -p plume-cli || cargo build --release --no-default-features --features="${FEATURES}" -p plume-cli | ||||
|       - *save_cache_release | ||||
|       - run: script/generate_artifact.sh | ||||
|       - store_artifacts: | ||||
|           path: plume.tar.gz | ||||
|           destination: plume.tar.gz | ||||
| 
 | ||||
| 
 | ||||
| jobs: | ||||
|   download_deps: | ||||
|     <<: *defaults | ||||
| @ -217,6 +252,19 @@ jobs: | ||||
|     <<: *selenium | ||||
|     <<: *env_sqlite | ||||
|     <<: *test_browser | ||||
|   all_ok: | ||||
|     docker: | ||||
|       - image: alpine:3.7 | ||||
|     steps: | ||||
|       - run: /bin/true | ||||
|   release_postgresql: | ||||
|     <<: *defaults | ||||
|     <<: *env_postgresql | ||||
|     <<: *release | ||||
|   release_sqlite: | ||||
|     <<: *defaults | ||||
|     <<: *env_sqlite | ||||
|     <<: *release | ||||
| 
 | ||||
| workflows: | ||||
|   version: 2 | ||||
| @ -247,3 +295,18 @@ workflows: | ||||
|       - test_browser_sqlite: | ||||
|           requires: | ||||
|             - build_web | ||||
|       - all_ok: | ||||
|           requires: | ||||
|             - cargo_fmt | ||||
|             - test_cli_postgresql | ||||
|             - test_cli_sqlite | ||||
|             - test_unit_postgresql | ||||
|             - test_unit_sqlite | ||||
|             - test_browser_postgresql | ||||
|             - test_browser_sqlite | ||||
|       - release_postgresql: | ||||
|           requires: | ||||
|             - all_ok | ||||
|       - release_sqlite: | ||||
|           requires: | ||||
|             - all_ok | ||||
|  | ||||
							
								
								
									
										5
									
								
								script/generate_artifact.sh
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										5
									
								
								script/generate_artifact.sh
									
									
									
									
									
										Executable file
									
								
							| @ -0,0 +1,5 @@ | ||||
| #!/bin/bash | ||||
| mkdir bin | ||||
| cp target/release/{plume,plm} bin | ||||
| cp "$(which diesel)" bin | ||||
| tar -cvzf plume.tar.gz bin/ static/ migrations/$FEATURES | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user