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 }}