docker + circleci autobuild; fixed a bug when missing Projects directory

This commit is contained in:
Wryn (yage) Wagner 2022-10-01 12:58:39 -06:00
parent 43f6ef72aa
commit ee6a1b0cbd
6 changed files with 110 additions and 2 deletions

24
.circleci/config.yml Normal file
View File

@ -0,0 +1,24 @@
---
version: 2.1
jobs:
deploy:
docker:
- img: cimg/base:stable
steps:
- checkout
- run: docker build . -t blaziken734/debugger -f .docker/Dockerfile
- run: echo $DOCKER_PASS | docker login -u $DOCKER_USER --password-stdin
- run: docker push blaziken734/debugger
workflows:
version: 2
main:
jobs:
- deploy:
context:
- yage-docker
filters:
branches:
only:
- main

50
.docker/Dockerfile Normal file
View File

@ -0,0 +1,50 @@
FROM python:alpine
WORKDIR /root
RUN : \
&& apk add --update --no-cache \
aws-cli \
binutils \
coreutils \
curl \
findutils \
fzf \
gawk \
git \
grep \
iproute2 \
ncurses \
ncurses-terminfo \
nodejs \
npm \
openssh \
pciutils \
postgresql \
redis \
ripgrep \
sed \
tmux \
usbutils \
util-linux \
vim \
wget \
zsh \
&& apk add --update --no-cache --repository=http://dl-cdn.alpinelinux.org/alpine/edge/testing/ \
helm \
kubectl \
&& mkdir -p /root/.wryn \
;
COPY . /root/.wryn
RUN : \
&& /bin/zsh -c '/root/.wryn/setup/run --no-fluff --ci --force-root' \
&& echo 'hostnamectl() { echo docker; }' > $HOME/.config/wryn/env.zsh \
&& echo 'source /root/.wryn/config/dotwryn.env.zsh' >> $HOME/.config/wryn/env.zsh \
&& echo 'WELCOME() {}' >> $HOME/.config/wryn/env.zsh \
&& echo "PS1_INDICATOR_SYMBOL=''" >> $HOME/.config/wryn/env.zsh \
&& echo "PS1_USER='root@debugger'" >> $HOME/.config/wryn/env.zsh \
&& rm /root/dotwryn-install.log \
;
CMD ["zsh"]

View File

@ -6,7 +6,7 @@
# #
# directories must be fully-qualified # directories must be fully-qualified
CA__DIRS=( CA__DIRS=(
$(find "$HOME/Projects" -mindepth 1 -maxdepth 1 -type d | sed 's/\/$//') $([ -d "$HOME/Projects" ] && find "$HOME/Projects" -mindepth 1 -maxdepth 1 -type d | sed 's/\/$//')
) )
# additional cloning targets; MUST END IN ':' or '/' # additional cloning targets; MUST END IN ':' or '/'

32
setup/git.zsh Normal file
View File

@ -0,0 +1,32 @@
#####################################################################
SETUP__GIT() {
__STATUS 'updating remotes for .wryn'
cd $DOTWRYN_PATH
git remote rm origin 2>/dev/null
git remote add origin git@github.com:wrynegade/dotwryn.git
git remote set-url --add --push origin git@github.com:wrynegade/dotwryn.git
git remote set-url --add --push origin git@yage.io:wrynegade/dotwryn.git
git remote set-url --add --push origin git@bitbucket.org:wrynegade/dotwryn.git
__STATUS 'updating upstream for zsh/plugins/code-activator'
cd $DOTWRYN_PATH/zsh/plugins/code-activator
git remote rm upstream 2>/dev/null
git remote add upstream git@yage.io:zsh/code-activator.git
git remote set-url --add --push upstream git@yage.io:zsh/code-activator.git
git remote set-url --add --push upstream git@github.com:wrynegade/code-activator-zsh.git
__STATUS 'updating upstream for zsh/plugins/scwrypts'
cd $DOTWRYN_PATH/zsh/plugins/scwrypts
git remote rm upstream 2>/dev/null
git remote add upstream git@yage.io:zsh/code-activator
git remote set-url --add --push upstream git@yage.io:zsh/code-activator
git remote set-url --add --push upstream git@github.com:wrynegade/scwrypts.git
__STATUS 'updating upstream for zsh/plugins/ssh'
cd $DOTWRYN_PATH/zsh/plugins/ssh
git remote rm upstream
git remote add upstream git@yage.io:zsh/ssh.git
cd $DOTWRYN_PATH
}

View File

@ -31,6 +31,7 @@ SCWRYPTS() {
##################################################################### #####################################################################
source "$DOTWRYN_PATH/setup/os.zsh" source "$DOTWRYN_PATH/setup/os.zsh"
source "$DOTWRYN_PATH/setup/git.zsh"
source "$DOTWRYN_PATH/setup/config.zsh" source "$DOTWRYN_PATH/setup/config.zsh"
##################################################################### #####################################################################

View File

@ -20,7 +20,8 @@ LOGFILE="$HOME/dotwryn-install.log"
__INFO "installation start : $(date)" 2>> "$LOGFILE" __INFO "installation start : $(date)" 2>> "$LOGFILE"
{ {
SETUP__OS || __FAIL 1 'failed to set up os-dependencies (see above)' SETUP__OS || __FAIL 1 'failed to set up os-dependencies (see above)'
SETUP__CONFIG || __FAIL 2 'failed to set up program configuration (see above)' SETUP__GIT || __FAIL 2 'failed to set up git (see above)'
SETUP__CONFIG || __FAIL 3 'failed to set up program configuration (see above)'
} 2>&1 | tee --append "$LOGFILE" } 2>&1 | tee --append "$LOGFILE"
__INFO "installation complete: $(date)" 2>> "$LOGFILE" __INFO "installation complete: $(date)" 2>> "$LOGFILE"