Jenkins scripts
Summary: Add some jenkins scripts so it's possible to deploy the app easily Hotfix Test Plan: tbd Reviewers: #reviewers Differential Revision: https://hub.sealcode.org/D1062master
							parent
							
								
									38757ae139
								
							
						
					
					
						commit
						88b466b2c4
					
				@ -0,0 +1,27 @@
 | 
			
		||||
#!/bin/bash
 | 
			
		||||
 | 
			
		||||
docker-compose down
 | 
			
		||||
 | 
			
		||||
set -e
 | 
			
		||||
 | 
			
		||||
export SEALIOUS_PORT=$1
 | 
			
		||||
export SEALIOUS_BASE_URL=$2
 | 
			
		||||
 | 
			
		||||
docker-compose down
 | 
			
		||||
docker-compose up -d db
 | 
			
		||||
./npm.sh ci
 | 
			
		||||
./npm.sh run build:back;
 | 
			
		||||
./npm.sh run build:front;
 | 
			
		||||
 | 
			
		||||
rm -f log.txt
 | 
			
		||||
 | 
			
		||||
docker-compose run --user="$UID"\
 | 
			
		||||
			   -e "SEALIOUS_MONGO_PORT=27017" \
 | 
			
		||||
			   -e "SEALIOUS_MONGO_HOST=db" \
 | 
			
		||||
			   -e "SEALIOUS_PORT=$SEALIOUS_PORT" \
 | 
			
		||||
			   -e "SEALIOUS_BASE_URL=$SEALIOUS_BASE_URL" \
 | 
			
		||||
			   -p ${SEALIOUS_PORT}:${SEALIOUS_PORT} \
 | 
			
		||||
			   -d \
 | 
			
		||||
			   test \
 | 
			
		||||
			   /bin/sh -c "node . > log.txt" \
 | 
			
		||||
	&& echo "App started on $SEALIOUS_PORT"
 | 
			
		||||
@ -0,0 +1,3 @@
 | 
			
		||||
#!/usr/bin/env bash
 | 
			
		||||
 | 
			
		||||
docker-compose run --user="$UID" --rm --service-ports test npm --loglevel warn "$@"
 | 
			
		||||
											
												
													File diff suppressed because it is too large
													Load Diff
												
											
										
									
								@ -0,0 +1,5 @@
 | 
			
		||||
describe("sample test", () => {
 | 
			
		||||
	it("always passes", () => {
 | 
			
		||||
		return true;
 | 
			
		||||
	});
 | 
			
		||||
});
 | 
			
		||||
@ -0,0 +1,72 @@
 | 
			
		||||
const mri = require("mri");
 | 
			
		||||
const { spawn } = require("child_process");
 | 
			
		||||
 | 
			
		||||
const argv = process.argv.slice(2);
 | 
			
		||||
const args = mri(argv);
 | 
			
		||||
 | 
			
		||||
const bin_dir = "./node_modules/.bin/";
 | 
			
		||||
 | 
			
		||||
const mocha = bin_dir + "mocha";
 | 
			
		||||
 | 
			
		||||
let mocha_options = [
 | 
			
		||||
	"--recursive",
 | 
			
		||||
	"--timeout=10000",
 | 
			
		||||
	"--require",
 | 
			
		||||
	"source-map-support/register",
 | 
			
		||||
];
 | 
			
		||||
 | 
			
		||||
if (args["test-report"]) {
 | 
			
		||||
	mocha_options = [
 | 
			
		||||
		...mocha_options,
 | 
			
		||||
		// "--require",
 | 
			
		||||
		// "ts-node/register",
 | 
			
		||||
		// "--require",
 | 
			
		||||
		// "./src/http/type-overrides.ts",
 | 
			
		||||
		"--reporter",
 | 
			
		||||
		"xunit",
 | 
			
		||||
		"--reporter-option",
 | 
			
		||||
		"output=.xunit",
 | 
			
		||||
	];
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
const mocha_files = ["dist/**/*.test.js"];
 | 
			
		||||
 | 
			
		||||
let command = [mocha, ...mocha_options, ...mocha_files];
 | 
			
		||||
 | 
			
		||||
if (args.cover) {
 | 
			
		||||
	const nyc = [
 | 
			
		||||
		bin_dir + "nyc",
 | 
			
		||||
		"-all",
 | 
			
		||||
		"--exclude",
 | 
			
		||||
		"src/front",
 | 
			
		||||
		"--exclude",
 | 
			
		||||
		"dist",
 | 
			
		||||
		"--source-map",
 | 
			
		||||
		"false",
 | 
			
		||||
	];
 | 
			
		||||
	if (args["cover-html"]) {
 | 
			
		||||
		nyc.push("--reporter", "lcov");
 | 
			
		||||
	} else {
 | 
			
		||||
		nyc.push("--reporter", "clover");
 | 
			
		||||
	}
 | 
			
		||||
	command = [...nyc, ...command];
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
if (args.debug) {
 | 
			
		||||
	command = ["node", "inspect", ...command];
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
console.log("spawning mocha...", command);
 | 
			
		||||
 | 
			
		||||
const proc = spawn(command[0], command.slice(1), {
 | 
			
		||||
	stdio: "inherit",
 | 
			
		||||
	env: process.env,
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
proc.on("exit", function (code) {
 | 
			
		||||
	if (args["test-report"]) {
 | 
			
		||||
		process.exit(0);
 | 
			
		||||
	} else {
 | 
			
		||||
		process.exit(code);
 | 
			
		||||
	}
 | 
			
		||||
});
 | 
			
		||||
					Loading…
					
					
				
		Reference in New Issue