diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..63758cf --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,42 @@ +name: Kotlin SDK CI with Gradle + +on: [push, pull_request] + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Checkout code + uses: actions/checkout@v4 + + - name: Set up JDK 11 + uses: actions/setup-java@v3 + with: + distribution: 'adopt' + java-version: '11' + + - name: Prepare Cloudinary URL + id: cloudinary + run: | + CLOUDINARY_URL=$(bash tools/get_test_cloud.sh) + echo "CLOUDINARY_URL=$CLOUDINARY_URL" >> $GITHUB_ENV + echo "cloud_name: $(echo $CLOUDINARY_URL | cut -d'@' -f2)" + + - name: Clean Gradle plugin cache + run: | + rm -f $HOME/.gradle/caches/modules-2/modules-2.lock + rm -fr $HOME/.gradle/caches/*/plugin-resolution/ + + - name: Cache Gradle + uses: actions/cache@v4 + with: + path: | + ~/.gradle/caches + ~/.gradle/wrapper + key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} + restore-keys: | + ${{ runner.os }}-gradle- + + - name: Run tests + run: ./gradlew clean test diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index fc8428c..0000000 --- a/.travis.yml +++ /dev/null @@ -1,26 +0,0 @@ -language: java -dist: trusty -sudo: required - - -before_cache: - - rm -f $HOME/.gradle/caches/modules-2/modules-2.lock - - rm -fr $HOME/.gradle/caches/*/plugin-resolution/ -cache: - directories: - - $HOME/.gradle/caches/ - - $HOME/.gradle/wrapper/ - -jdk: - - oraclejdk8 - -before_script: > - export CLOUDINARY_URL=$(bash tools/get_test_cloud.sh); - echo cloud_name: "$(echo $CLOUDINARY_URL | cut -d'@' -f2)" - -script: CLOUDINARY_URL=$CLOUDINARY_URL ./gradlew clean test - -notifications: - email: - recipients: - - sdk_developers@cloudinary.com diff --git a/tools/allocate_test_cloud.sh b/tools/allocate_test_cloud.sh index 0da785f..040a173 100644 --- a/tools/allocate_test_cloud.sh +++ b/tools/allocate_test_cloud.sh @@ -6,4 +6,4 @@ SDK_NAME="${1}" CLOUD_DETAILS=$(curl -sS -d "{\"prefix\" : \"${SDK_NAME}\"}" "${API_ENDPOINT}") -echo ${CLOUD_DETAILS} | python -c 'import json,sys;c=json.load(sys.stdin)["payload"];print("cloudinary://%s:%s@%s" % (c["cloudApiKey"], c["cloudApiSecret"], c["cloudName"]))' +echo ${CLOUD_DETAILS} | python3 -c 'import json,sys;c=json.load(sys.stdin)["payload"];print("cloudinary://%s:%s@%s" % (c["cloudApiKey"], c["cloudApiSecret"], c["cloudName"]))'