Skip to content

Commit

Permalink
Merge pull request #853 from hyperskill/release/1.50
Browse files Browse the repository at this point in the history
Release 1.50
  • Loading branch information
ivan-magda authored Mar 1, 2024
2 parents 2ee16d2 + bbda1d1 commit f4788e4
Show file tree
Hide file tree
Showing 544 changed files with 12,710 additions and 2,749 deletions.
5 changes: 4 additions & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -98,4 +98,7 @@ ij_kotlin_variable_annotation_wrap = off
ij_kotlin_while_on_new_line = false
ij_kotlin_wrap_elvis_expressions = 1
ij_kotlin_wrap_expression_body_functions = 1
ij_kotlin_wrap_first_method_in_call_chain = false
ij_kotlin_wrap_first_method_in_call_chain = false

[*.yml]
indent_size = 2
1 change: 1 addition & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@ androidHyperskillApp/keys/debug.properties filter=git-crypt diff=git-crypt
androidHyperskillApp/keys/release.properties filter=git-crypt diff=git-crypt
androidHyperskillApp/fastlane/Appfile filter=git-crypt diff=git-crypt
androidHyperskillApp/google-services.json filter=git-crypt diff=git-crypt
shared/src/androidMain/keys/revenuecat.properties filter=git-crypt diff=git-crypt
buildsystem/certs/** filter=git-crypt diff=git-crypt
shared/keys/** filter=git-crypt diff=git-crypt
sentry.properties filter=git-crypt diff=git-crypt
Expand Down
12 changes: 6 additions & 6 deletions .github/actions/setup-android/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -62,21 +62,21 @@ runs:

- name: Setup Ruby
if: ${{ inputs.setup-ruby == 'true' }}
uses: ruby/setup-ruby@v1.150.0
uses: ruby/setup-ruby@v1.171.0
with:
ruby-version: '3.1.0'
ruby-version: '3.3.0'
bundler-cache: true
working-directory: './androidHyperskillApp'

- name: Setup Java JDK
uses: actions/setup-java@v3.10.0
uses: actions/setup-java@v4.0.0
with:
java-version: '17'
distribution: 'temurin'

# Cache Gradle dependencies
- name: Setup Gradle Dependencies Cache
uses: actions/cache@v3.3.2
uses: actions/cache@v4.0.1
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}
Expand All @@ -85,7 +85,7 @@ runs:
# Cache Gradle Wrapper
- name: Setup Gradle Wrapper Cache
uses: actions/cache@v3.3.2
uses: actions/cache@v4.0.1
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('**/gradle*properties') }}
Expand All @@ -94,7 +94,7 @@ runs:
# Cache Kotlin/Native compiler
- name: Setup Kotlin/Native Compiler Cache
uses: actions/cache@v3.3.2
uses: actions/cache@v4.0.1
with:
path: ~/.konan
key: ${{ runner.os }}-kotlin-native-compiler-${{ hashFiles('gradle/libs.versions.toml') }}
Expand Down
18 changes: 9 additions & 9 deletions .github/actions/setup-ios/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ runs:
- name: Setup Xcode version
uses: maxim-lobanov/setup-xcode@v1.6.0
with:
xcode-version: '15.1'
xcode-version: '15.2'

- name: Homebrew install git-crypt
run: brew install git-crypt
Expand Down Expand Up @@ -49,21 +49,21 @@ runs:
shell: bash

- name: Setup Ruby
uses: ruby/setup-ruby@v1.150.0
uses: ruby/setup-ruby@v1.171.0
with:
ruby-version: '3.1.0'
ruby-version: '3.3.0'
bundler-cache: true
working-directory: './iosHyperskillApp'

- name: Setup Java JDK
uses: actions/setup-java@v3.10.0
uses: actions/setup-java@v4.0.0
with:
java-version: '17'
distribution: 'temurin'

# Cache Gradle dependencies
- name: Setup Gradle Dependencies Cache
uses: actions/cache@v3.3.2
uses: actions/cache@v4.0.1
with:
path: ~/.gradle/caches
key: ${{ runner.os }}-gradle-caches-${{ hashFiles('**/*.gradle', '**/*.gradle.kts') }}
Expand All @@ -72,7 +72,7 @@ runs:
# Cache Gradle Wrapper
- name: Setup Gradle Wrapper Cache
uses: actions/cache@v3.3.2
uses: actions/cache@v4.0.1
with:
path: ~/.gradle/wrapper
key: ${{ runner.os }}-gradle-wrapper-${{ hashFiles('**/gradle*properties') }}
Expand All @@ -81,7 +81,7 @@ runs:
# Cache Kotlin/Native compiler
- name: Setup Kotlin/Native Compiler Cache
uses: actions/cache@v3.3.2
uses: actions/cache@v4.0.1
with:
path: ~/.konan
key: ${{ runner.os }}-kotlin-native-compiler-${{ hashFiles('gradle/libs.versions.toml') }}
Expand All @@ -100,7 +100,7 @@ runs:

# Cache Pods dependencies
- name: Cache Pods
uses: actions/cache@v3.3.2
uses: actions/cache@v4.0.1
id: cache-pods
with:
path: './iosHyperskillApp/Pods'
Expand All @@ -111,7 +111,7 @@ runs:
# Cache CocoaPods
- name: Cache CocoaPods
if: steps.cache-pods.outputs.cache-hit != 'true'
uses: actions/cache@v3.3.2
uses: actions/cache@v4.0.1
with:
path: |
~/.cocoapods
Expand Down
35 changes: 3 additions & 32 deletions .github/workflows/android_beta_deployment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,43 +28,14 @@ jobs:
uses: actions/checkout@v4.1.1

- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v1.1.0
uses: gradle/wrapper-validation-action@v2.1.1

# Build and submit to the Firebase App Distribution
firebase-deployment:
name: Deploy to Firebase App Distribution
needs: gradle-wrapper-validation
runs-on: ubuntu-22.04
environment: android_production
timeout-minutes: 60

steps:
- name: Checkout
uses: actions/checkout@v4.1.1

- name: Setup CI
id: setup
uses: ./.github/actions/setup-android
with:
git-crypt-key: ${{ secrets.GIT_CRYPT_KEY }}
release-keystore-content: ${{ secrets.HYPERSKILL_RELEASE_KEYSTORE_CONTENT }}
setup-ruby: true

- name: Submit a new Beta Build to Firebase App Distribution
working-directory: "./androidHyperskillApp"
run: |
bundle exec fastlane beta \
firebase_app_id:"${{ secrets.FIREBASE_APP_ID }}" \
firebase_cli_token:"${{ secrets.FIREBASE_TOKEN }}"
env:
HYPERSKILL_IS_INTERNAL_TESTING: true
HYPERSKILL_KEYSTORE_PATH: ${{ steps.setup.outputs.release-keystore-path }}
HYPERSKILL_RELEASE_STORE_PASSWORD: ${{ secrets.HYPERSKILL_RELEASE_STORE_PASSWORD }}
HYPERSKILL_RELEASE_KEY_ALIAS: ${{ secrets.HYPERSKILL_RELEASE_KEY_ALIAS }}
HYPERSKILL_RELEASE_KEY_PASSWORD: ${{ secrets.HYPERSKILL_RELEASE_KEY_PASSWORD }}
IS_GIT_CRYPT_UNLOCKED: ${{ steps.setup.outputs.is-git-crypt-unlocked }}
GITHUB_USER: ${{ github.actor }}
GITHUB_PERSONAL_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
uses: ./.github/workflows/android_deploy_to_firebase.yml
secrets: inherit

# Build and submit to the Google Play
google-play-deployment:
Expand Down
38 changes: 38 additions & 0 deletions .github/workflows/android_deploy_to_firebase.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
name: Deploy to Firebase App Distribution

on:
workflow_call:

jobs:
deploy:
runs-on: ubuntu-22.04
environment: android_production
timeout-minutes: 30

steps:
- name: Checkout
uses: actions/checkout@v4.1.1

- name: Setup CI
id: setup
uses: ./.github/actions/setup-android
with:
git-crypt-key: ${{ secrets.GIT_CRYPT_KEY }}
release-keystore-content: ${{ secrets.HYPERSKILL_RELEASE_KEYSTORE_CONTENT }}
setup-ruby: true

- name: Submit a new Beta Build to Firebase App Distribution
working-directory: "./androidHyperskillApp"
run: |
bundle exec fastlane beta \
firebase_app_id:"${{ secrets.FIREBASE_APP_ID }}" \
firebase_cli_token:"${{ secrets.FIREBASE_TOKEN }}"
env:
HYPERSKILL_IS_INTERNAL_TESTING: true
HYPERSKILL_KEYSTORE_PATH: ${{ steps.setup.outputs.release-keystore-path }}
HYPERSKILL_RELEASE_STORE_PASSWORD: ${{ secrets.HYPERSKILL_RELEASE_STORE_PASSWORD }}
HYPERSKILL_RELEASE_KEY_ALIAS: ${{ secrets.HYPERSKILL_RELEASE_KEY_ALIAS }}
HYPERSKILL_RELEASE_KEY_PASSWORD: ${{ secrets.HYPERSKILL_RELEASE_KEY_PASSWORD }}
IS_GIT_CRYPT_UNLOCKED: ${{ steps.setup.outputs.is-git-crypt-unlocked }}
GITHUB_USER: ${{ github.actor }}
GITHUB_PERSONAL_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
27 changes: 27 additions & 0 deletions .github/workflows/android_deploy_to_firebase_manually.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
name: Android Deploy Manually to Firebase App Distribution

on:
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref_name }}
cancel-in-progress: true

jobs:
# Run Gradle Wrapper Validation Action to verify the wrapper's checksum
gradle-wrapper-validation:
name: Gradle Wrapper Validation
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4.1.1

- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v2.1.1

# Build and submit to the Firebase App Distribution
firebase-deployment:
name: Deploy to Firebase App Distribution
needs: gradle-wrapper-validation
uses: ./.github/workflows/android_deploy_to_firebase.yml
secrets: inherit
4 changes: 2 additions & 2 deletions .github/workflows/android_release_deployment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,15 +19,15 @@ defaults:
jobs:
# Run Gradle Wrapper Validation Action to verify the wrapper's checksum
gradle-wrapper-validation:
if: ${{ github.ref == 'refs/heads/main' }}
# if: ${{ github.ref == 'refs/heads/main' }}
name: Gradle Wrapper Validation
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v4.1.1

- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v1.1.0
uses: gradle/wrapper-validation-action@v2.1.1

# Build and submit to the Google Play
deployment:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/auto_author_assign.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,6 @@ jobs:
runs-on: ubuntu-22.04
if: ${{ !github.event.pull_request.assignee }}
steps:
- uses: toshimaru/auto-author-assign@v2.0.1
- uses: toshimaru/auto-author-assign@v2.1.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
6 changes: 3 additions & 3 deletions .github/workflows/automerge_into_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
automerge:
needs: files-changed
name: Automerge
runs-on: macos-13
runs-on: macos-14

steps:
- name: Checkout
Expand All @@ -37,9 +37,9 @@ jobs:
token: ${{ secrets.GH_PAT }}

- name: Setup Ruby
uses: ruby/setup-ruby@v1.150.0
uses: ruby/setup-ruby@v1.171.0
with:
ruby-version: "3.1.0"
ruby-version: "3.3.0"
bundler-cache: true
working-directory: "./iosHyperskillApp"

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/build_caches.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ jobs:
needs: files-changed
if: ${{ github.event_name == 'workflow_dispatch' || needs.files-changed.outputs.ios == 'true' }}
name: Build iOS Caches
runs-on: macos-13
runs-on: macos-14
timeout-minutes: 60

steps:
Expand Down
12 changes: 6 additions & 6 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ jobs:
uses: actions/checkout@v4.1.1

- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v1.1.0
uses: gradle/wrapper-validation-action@v2.1.1

files-changed:
name: Detect changes
Expand Down Expand Up @@ -79,22 +79,22 @@ jobs:
needs: files-changed
if: ${{ needs.files-changed.outputs.ios == 'true' || needs.files-changed.outputs.shared == 'true' }}
name: Run SwiftLint
runs-on: macos-13
runs-on: macos-14
timeout-minutes: 10

steps:
- name: Checkout
uses: actions/checkout@v4.1.1

- name: Setup Ruby
uses: ruby/setup-ruby@v1.150.0
uses: ruby/setup-ruby@v1.171.0
with:
ruby-version: '3.1.0'
ruby-version: '3.3.0'
bundler-cache: true
working-directory: './iosHyperskillApp'

- name: Cache Pods
uses: actions/cache@v3.3.3
uses: actions/cache@v4.0.1
id: cache-pods
with:
path: './iosHyperskillApp/Pods'
Expand Down Expand Up @@ -162,7 +162,7 @@ jobs:
build-ios:
needs: swiftlint
name: Build iOS
runs-on: macos-13
runs-on: macos-14
timeout-minutes: 30

steps:
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ jobs:
uses: actions/checkout@v4.1.1

- name: Detect changes
uses: dorny/paths-filter@v2.11.1
uses: dorny/paths-filter@v3.0.1
id: changes
with:
base: ${{ inputs.base }}
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/gh_pages_analytics.yml
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ jobs:
GITHUB_PERSONAL_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Upload Artifact
uses: actions/upload-pages-artifact@v3.0.0
uses: actions/upload-pages-artifact@v3.0.1
with:
name: 'github-pages-analytics'
path: 'shared/build/dokka/analytics'
Expand All @@ -69,6 +69,6 @@ jobs:
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4.0.2
uses: actions/deploy-pages@v4.0.4
with:
artifact_name: 'github-pages-analytics'
4 changes: 2 additions & 2 deletions .github/workflows/ios_beta_deployment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,13 @@ jobs:
uses: actions/checkout@v4.1.1

- name: Gradle Wrapper Validation
uses: gradle/wrapper-validation-action@v1.1.0
uses: gradle/wrapper-validation-action@v2.1.1

# Build, archive for ad-hoc and submit to Firebase App Distribution
deployment:
name: iOS Beta Deployment
needs: gradle-wrapper-validation
runs-on: macos-13
runs-on: macos-14
environment: ios_production
timeout-minutes: 60

Expand Down
Loading

0 comments on commit f4788e4

Please sign in to comment.