@echo on
|
|
IF %1.==. GOTO NoOS
|
|
SET OS=%1
|
|
|
|
:CheckCommand
|
|
IF %2.==. GOTO NoCmd
|
|
SET COMMAND=%2 %3
|
|
|
|
:CheckBats
|
|
IF NOT %3.==. GOTO CheckAlias
|
|
SET COMMAND=bats %2
|
|
IF NOT "%COMMAND:~5,12%"=="/getssl/test" SET COMMAND=bats /getssl/test/%2
|
|
|
|
:CheckAlias
|
|
REM check if OS *contains* staging
|
|
SET GETSSL_IDN_HOST=%OS%.xn--t-r1a81lydm69gz81r.test
|
|
IF NOT x%OS:duck=%==x%OS% GOTO duckdns
|
|
IF NOT x%OS:dynu=%==x%OS% GOTO dynu
|
|
IF NOT x%OS:acmedns=%==x%OS% GOTO acmedns
|
|
IF NOT x%OS:bash=%==x%OS% GOTO bash
|
|
SET ALIAS=%OS%.getssl.test
|
|
SET STAGING=
|
|
SET GETSSL_OS=%OS%
|
|
GOTO Run
|
|
|
|
:NoOS
|
|
SET OS=ubuntu
|
|
GOTO CheckCommand
|
|
|
|
:NoCmd
|
|
REM SET COMMAND=/getssl/test/run-bats.sh
|
|
SET COMMAND=bats /getssl/test --timing
|
|
GOTO CheckAlias
|
|
|
|
:duckdns
|
|
SET ALIAS=%OS:-duckdns=%-getssl.duckdns.org
|
|
SET STAGING=--env STAGING=true --env dynamic_dns=duckdns --env DUCKDNS_TOKEN=1d616aa9-b8e4-4bb4-b312-3289de82badb
|
|
SET GETSSL_OS=%OS:-duckdns=%
|
|
GOTO Run
|
|
|
|
:dynu
|
|
SET ALIAS=%OS:-dynu=%-getssl.freeddns.org
|
|
SET STAGING=--env STAGING=true --env dynamic_dns=dynu --env DYNU_API_KEY=65cXefd35XbYf36546eg5dYcZT6X52Y2
|
|
SET GETSSL_OS=%OS:-dynu=%
|
|
GOTO Run
|
|
|
|
:acmedns
|
|
SET ALIAS=%OS%-getssl.freeddns.org
|
|
SET STAGING=--env STAGING=true --env dynamic_dns=acmedns
|
|
SET GETSSL_OS=%OS:-acmedns=%
|
|
GOTO Run
|
|
|
|
:bash
|
|
SET ALIAS=%OS%.getssl.test
|
|
SET STAGING=
|
|
SET GETSSL_OS=alpine
|
|
|
|
:Run
|
|
FOR %%I in (.) DO SET CurrDirName=%%~nxI
|
|
|
|
docker build --pull --rm -f "test\Dockerfile-%OS%" -t getssl-%OS% .
|
|
IF %ErrorLevel% EQU 1 GOTO End
|
|
@echo on
|
|
docker run -it ^
|
|
--env GETSSL_HOST=%ALIAS% %STAGING% ^
|
|
--env GETSSL_IDN_HOST=%GETSSL_IDN_HOST% ^
|
|
--env GETSSL_OS=%GETSSL_OS% ^
|
|
-v %cd%:/getssl ^
|
|
--rm ^
|
|
--network %CurrDirName%_acmenet ^
|
|
--network-alias %ALIAS% ^
|
|
--network-alias %GETSSL_IDN_HOST% ^
|
|
--network-alias a.%OS%.getssl.test ^
|
|
--network-alias b.%OS%.getssl.test ^
|
|
--network-alias c.%OS%.getssl.test ^
|
|
--network-alias d.%OS%.getssl.test ^
|
|
--network-alias e.%OS%.getssl.test ^
|
|
--network-alias f.%OS%.getssl.test ^
|
|
--network-alias g.%OS%.getssl.test ^
|
|
--network-alias h.%OS%.getssl.test ^
|
|
--network-alias i.%OS%.getssl.test ^
|
|
--network-alias j.%OS%.getssl.test ^
|
|
--network-alias k.%OS%.getssl.test ^
|
|
--network-alias wild-%ALIAS% ^
|
|
--hostname getssl-%OS% ^
|
|
--dns 8.8.8.8 ^
|
|
--name getssl-%OS% ^
|
|
getssl-%OS% ^
|
|
%COMMAND%
|
|
|
|
:End
|