docserver/.gitea/workflows/on_docserver.yaml

94 lines
4.3 KiB
YAML

name: Install
run-name: ${{ gitea.actor }} is intall Actions 🚀
on: [push]
jobs:
install:
strategy:
fail-fast: false
matrix:
os: ubuntu-latest # [ubuntu-latest, macos-latest, windows-latest]
name: Cargo install on ubuntu-latest
runs-on: ubuntu-latest
env:
CARGO_TERM_COLOR: always
SSH_REPO_URL: "ssh://git@clrepo.tls13.io:9623"
TARGET_NAME: "docserver"
RUSTUP_HOME: "/toolcache/rust/.rustup"
CARGO_HOME: "/toolcache/rust/.cargo"
CARGO_TARGET_DIR: "/toolcache/docserver_target"
#KYD: ${{ secrets.KYD}}
#KUBE_CONFIG: ${{ secrets.KUBE_CONFIG }}
#KUBECONFIG: "/tmp/.kubeconfig"
steps:
- name: Init job triggered by event
run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event "
- name: Workspace
run: |
echo "🔎 Branch name ${{ gitea.ref }} from repository ${{ gitea.repository }}."
mkdir -p "$HOME/.ssh"
echo "${{ secrets.KYD }}" | base64 -d > "$HOME/.ssh/id_clrepo"
chmod 600 $HOME/.ssh/id_clrepo
echo "${{ vars.SSH_CONFIG }}" > $HOME/.ssh/config
#KYD=$(echo "${{ secrets.KYD }}" | base64 -d)
# ls ${{ gitea.workspace }}
# - name: Check out repository code
# uses: actions/checkout@v3
# with:
# ssh-key: "$KYD"
# persist-credentials: true
# github-server-url: git@clrepo.tls13.io:9623
# #submodules: 'recursive'
# # Defs https://gitea.com/actions/checkout
# #run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner."
- name: Clone repository
run: |
git clone --recurse-submodules ${SSH_REPO_URL}/${{ gitea.repository }}.git ${{ gitea.workspace }}
#while true; do sleep 20; done
- name: Install Rust
run: |
printf "\n\t🐋 Installing dependencies 🐋\t\n"
apt-get -yq update
apt-get -yq install build-essential llvm libssl-dev
if [ -x "${CARGO_HOME}/bin/cargo" ] ; then
source "${CARGO_HOME}/env"
else
printf "\n\t🐋 Installing Rust 🐋\t\n"
curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain=stable --profile=minimal
source "${CARGO_HOME}/env"
printf "\n\t🐋 Installing Rust components 🐋\t\n"
rustup component add rustfmt clippy
fi
printf "\n\t🐋 Installed CARGO 🐋\t\n"
cargo -V
printf "\n\t🐋 Installed RUSTC 🐋\t\n"
rustc -V
# printf "\n\t🐋 Installed RUSTUP 🐋\t\n"
# rustup -V
- name: Rust check
run: |
source "${CARGO_HOME}/env"
cd ${{ gitea.workspace }}
cargo check
# - name: Install kubectl
# run: |
# OS="$(uname | tr '[:upper:]' '[:lower:]')"
# ARCH="$(uname -m | sed -e 's/x86_64/amd64/' -e 's/\(arm\)\(64\)\?.*/\1\2/' -e 's/aarch64$/arm64/')"
# apt-get update
# apt-get install ca-certificates
# update-ca-certificates
# curl -L "https://dl.k8s.io/release/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/$OS/$ARCH/kubectl" -o /usr/local/bin/kubectl
# [ -r "/usr/local/bin/kubectl" ] && chmod +x /usr/local/bin/kubectl
# echo "${{ secrets.KUBE_CONFIG }}" | base64 -d > $KUBECONFIG
# - name: Run K8s JOB
# run: |
# echo "${{ vars.K8_JOB }}" | sed "s/{{KS_NAMESPACE}}/${{ vars.KS_NAMESPACE }}/g" | sed "s/{{KS_JOB_NAME}}/${{ vars.KS_JOB_NAME }}/g" > /tmp/job.yaml
# if [ -n "$(kubectl get pods -n ${{ vars.KS_NAMESPACE }} | grep ${{ vars.KS_JOB_NAME }})" ]; then
# kubectl delete -f /tmp/job.yaml
# fi
# echo "${{ vars.K8_CONFIGMAP_JOB }}" | sed "s/{{KS_NAMESPACE}}/${{ vars.KS_NAMESPACE }}/g" | sed "s/{{KS_JOB_NAME}}/${{ vars.KS_JOB_NAME }}/g"> /tmp/config_job.yaml
# echo "🍏 Job ${{ vars.KS_JOB_NAME }} in ${{ vars.KS_NAMESPACE }} launched."
# echo "kubectl cp -n ${{ vars.KS_NAMESPACE }} ${{ gitea.workspace }}/target/debug/${TARGET_NAME} pod/targetPath ""
# kubectl apply -f /tmp/config_job.yaml
# kubectl apply -f /tmp/job.yaml
# kubectl get jobs -n ${{ vars.KS_NAMESPACE }}