From 4473128e3073e07a4b341df23d8538939f6bdc94 Mon Sep 17 00:00:00 2001 From: aminecmi Date: Wed, 20 Nov 2024 22:32:11 +0100 Subject: [PATCH] wip --- .gitea/workflows/demo.yml | 19 -------------- .gitea/workflows/push.yml | 52 +++++++++++++++++++++++++++------------ .gitea/workflows/tag.yml | 45 +++++++++++++++++++++++++++++++++ 3 files changed, 81 insertions(+), 35 deletions(-) delete mode 100644 .gitea/workflows/demo.yml create mode 100644 .gitea/workflows/tag.yml diff --git a/.gitea/workflows/demo.yml b/.gitea/workflows/demo.yml deleted file mode 100644 index 394c807..0000000 --- a/.gitea/workflows/demo.yml +++ /dev/null @@ -1,19 +0,0 @@ -name: Gitea Actions Demo -run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 -on: [push] - -jobs: - Explore-Gitea-Actions: - runs-on: ubuntu-latest - steps: - - run: echo "🎉 The job was automatically triggered by a ${{ gitea.event_name }} event." - - run: echo "🐧 This job is now running on a ${{ runner.os }} server hosted by Gitea!" - - run: echo "🔎 The name of your branch is ${{ gitea.ref }} and your repository is ${{ gitea.repository }}." - - name: Check out repository code - uses: actions/checkout@v4 - - run: echo "💡 The ${{ gitea.repository }} repository has been cloned to the runner." - - run: echo "🖥️ The workflow is now ready to test your code on the runner." - - name: List files in the repository - run: | - ls ${{ gitea.workspace }} - - run: echo "🍏 This job's status is ${{ job.status }}." \ No newline at end of file diff --git a/.gitea/workflows/push.yml b/.gitea/workflows/push.yml index 7a7cc8e..72be402 100644 --- a/.gitea/workflows/push.yml +++ b/.gitea/workflows/push.yml @@ -1,5 +1,4 @@ -name: Gitea Actions Demo -run-name: ${{ gitea.actor }} is testing out Gitea Actions 🚀 +name: Push/PR Steps on: pull_request: branches: @@ -8,25 +7,46 @@ on: branches: - master - runner + #- release tags: - 'v*' - - jobs: Lint: - runs-on: mingc/android-build-box:latest + runs-on: ubuntu-latest steps: - name: Check out repository code uses: actions/checkout@v4 - - run: echo "---------------------------------------------------------" - - run: echo "Install linters..." - - run: curl -sSLO https://github.com/pinterest/ktlint/releases/download/1.0.0/ktlint && chmod a+x ktlint && mv ktlint /usr/local/bin/ - - run: curl -sSLO https://github.com/detekt/detekt/releases/download/v1.23.1/detekt-cli-1.23.1.zip && unzip detekt-cli-1.23.1.zip - - run: echo "---------------------------------------------------------" - - run: echo "Linting..." - - run: ktlint 'shared/**/*.kt' 'androidApp/**/*.kt' '!shared/build' || true - - run: echo "---------------------------------------------------------" - - run: echo "Detecting..." - - run: ./detekt-cli-1.23.1/bin/detekt-cli --all-rules --excludes '**/shared/build/**/*.kt' || true - - run: echo "---------------------------------------------------------" \ No newline at end of file + - uses: actions/setup-java@v4 + with: + distribution: 'temurin' # See 'Supported distributions' for available options + java-version: '17' + - name: Install klint + run: curl -sSLO https://github.com/pinterest/ktlint/releases/download/1.0.0/ktlint && chmod a+x ktlint && mv ktlint /usr/local/bin/ + - name: Install detekt + run: curl -sSLO https://github.com/detekt/detekt/releases/download/v1.23.1/detekt-cli-1.23.1.zip && unzip detekt-cli-1.23.1.zip + - name: Linting... + run: ktlint 'shared/**/*.kt' 'androidApp/**/*.kt' '!shared/build' || true + - name: Detecting... + run: ./detekt-cli-1.23.1/bin/detekt-cli --all-rules --excludes '**/shared/build/**/*.kt' || true + + BuildAndTest: + runs-on: ubuntu-latest + #needs: Lint + steps: + - name: Check out repository code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Fetch tags + run: git fetch --tags -p + - uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: '17' + - name: Setup Android SDK + uses: android-actions/setup-android@v3 + - name: Configure gradle... + run: mkdir -p ~/.gradle && echo "org.gradle.daemon=false\nignoreGitVersion=true\nsystemProp.org.gradle.internal.http.connectionTimeout=180000\nsystemProp.org.gradle.internal.http.socketTimeout=180000" >> ~/.gradle/gradle.properties + - name: Build and test + run: ./gradlew build --stacktrace diff --git a/.gitea/workflows/tag.yml b/.gitea/workflows/tag.yml new file mode 100644 index 0000000..dcb058a --- /dev/null +++ b/.gitea/workflows/tag.yml @@ -0,0 +1,45 @@ +name: Tag +on: + push: + branches: + - release + +jobs: + createTagAndChangelog: + needs: BuildAndTest + runs-on: ubuntu-latest + steps: + - name: Check out repository code + uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Creating the tag + run: | + git fetch --tags -p + PREV=$(git describe --tags --abbrev=0) + ./build.sh --publish --from-ci + - name: Generating changelog + run: | + VER=$(git describe --tags --abbrev=0) + CHANGELOG=$(git log $PREV..HEAD --pretty="- %s") + echo "**$VER**\n\n$CHANGELOG\n\n--------------------------------------------------------------------\n\n$(cat CHANGELOG.md)" > CHANGELOG.md + git add CHANGELOG.md + git config --global user.email "aminecmi+giteadrone@pm.me" + git config --global user.name "Gitea actions runner" + git commit -m "Changelog for $VER" + git push --tags + - name: copy file via ssh password + uses: appleboy/scp-action@v0.1.7 + with: + host: amine-bouabdallaoui.fr + username: ubuntu + key: ${{ secrets.PRIVATE_KEY }} + source: "version.txt" + target: "/home/ubuntu/" + - name: deploy version file + uses: appleboy/ssh-action@v1.2.0 + with: + host: amine-bouabdallaoui.fr + username: ubuntu + key: ${{ secrets.PRIVATE_KEY }} + script: cd /home/ubuntu && sudo rm -rf /var/www/amine/version.txt && sudo chown www-data:www-data ./version.txt && sudo mv version.txt /var/www/amine/ \ No newline at end of file