Skip to content

Commit

Permalink
Create reusable GitHub action
Browse files Browse the repository at this point in the history
  • Loading branch information
lukasz-antoniak committed Oct 29, 2024
1 parent 60a2022 commit 8afd41d
Show file tree
Hide file tree
Showing 2 changed files with 54 additions and 46 deletions.
50 changes: 50 additions & 0 deletions .github/actions/setup-environment/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
name: Setup environment
description: Setup environment for integration tests execution
runs:
using: "composite"
steps:
- name: Set up cache for SDKMAN
uses: actions/cache@v3
with:
path: ~/.sdkman
key: ${{ runner.os }}-sdkman

- name: Set up cache for PIP
uses: actions/cache@v3
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Install Java
shell: bash
run: |
echo "Installing SDKMAN..."
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
echo "sdkman_auto_answer=true" >> ~/.sdkman/etc/config
echo "Installing Java versions..."
sdk install java 11.0.24-zulu
sdk install java 17.0.12-zulu
sdk default java 11.0.24-zulu
sdk use java 11.0.24-zulu
echo "JAVA11_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
echo "JAVA17_HOME=$JAVA_HOME_17_X64" >> $GITHUB_ENV
echo "JAVA_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
echo "PATH=$PATH" >> $GITHUB_ENV
- name: Install CCM
shell: bash
run: |
echo "Creating Python virtual environment..."
VENV_DIR="$HOME/venv"
python3 -m venv $VENV_DIR
source $VENV_DIR/bin/activate
pip install --upgrade pip setuptools
echo "Installing CCM..."
pip install "git+https://github.com/riptano/ccm.git@${CCM_VERSION}"
50 changes: 4 additions & 46 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,29 +51,8 @@ jobs:
key: ${{ runner.os }}-go-${{ hashFiles('go.mod') }}
restore-keys: |
${{ runner.os }}-go-
- name: Install Java
run: |
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
echo "sdkman_auto_answer=true" >> ~/.sdkman/etc/config
# sdk list java
sdk install java 11.0.24-zulu
echo "JAVA11_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
sdk install java 17.0.12-zulu
echo "JAVA17_HOME=$JAVA_HOME_17_X64" >> $GITHUB_ENV
# by default use JDK 11
sdk default java 11.0.24-zulu
sdk use java 11.0.24-zulu
echo "JAVA_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
echo "PATH=$PATH" >> $GITHUB_ENV
- name: Install CCM
run: |
python3 -m venv ~/venv
~/venv/bin/pip install setuptools
~/venv/bin/pip install "git+https://github.com/riptano/ccm.git@${CCM_VERSION}"
- name: Setup environment
uses: ./.github/actions/setup-environment
- name: Start cassandra nodes
run: |
source ~/venv/bin/activate
Expand Down Expand Up @@ -158,29 +137,8 @@ jobs:
- uses: actions/setup-go@v4
with:
go-version: ${{ matrix.go }}
- name: Install Java
run: |
curl -s "https://get.sdkman.io" | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
echo "sdkman_auto_answer=true" >> ~/.sdkman/etc/config
# sdk list java
sdk install java 11.0.24-zulu
echo "JAVA11_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
sdk install java 17.0.12-zulu
echo "JAVA17_HOME=$JAVA_HOME_17_X64" >> $GITHUB_ENV
# by default use JDK 11
sdk default java 11.0.24-zulu
sdk use java 11.0.24-zulu
echo "JAVA_HOME=$JAVA_HOME_11_X64" >> $GITHUB_ENV
echo "PATH=$PATH" >> $GITHUB_ENV
- name: Install CCM
run: |
python3 -m venv ~/venv
~/venv/bin/pip install setuptools
~/venv/bin/pip install "git+https://github.com/riptano/ccm.git@${CCM_VERSION}"
- name: Setup environment
uses: ./.github/actions/setup-environment
- name: Start cassandra nodes
run: |
source ~/venv/bin/activate
Expand Down

0 comments on commit 8afd41d

Please sign in to comment.