Skip to content
Snippets Groups Projects
Select Git revision
  • f70672a100d05ae30c43e3d35a99176dcf5a97aa
  • master default protected
  • 42-improve-app-metadata
  • 17-improve-and-complete-offline-words-list-and-tips
  • 6-allow-translate-application
  • 9-improve-documentation
  • Release_1.10.0_44 protected
  • Release_1.9.2_43 protected
  • Release_1.9.1_42 protected
  • Release_1.9.0_41 protected
  • Release_1.8.0_40 protected
  • Release_1.7.0_39 protected
  • Release_1.6.0_38 protected
  • Release_1.5.2_37 protected
  • Release_1.5.1_36 protected
  • Release_1.5.0_35 protected
  • Release_1.4.1_34 protected
  • Release_1.4.0_33 protected
  • Release_1.3.2_32 protected
  • Release_1.3.1_31 protected
  • Release_1.3.0_30 protected
  • Release_1.2.18_29 protected
  • Release_1.2.17_28 protected
  • Release_1.2.16_27 protected
  • Release_1.2.15_26 protected
  • Release_1.2.14_25 protected
26 results

.gitlab-ci.yml

Blame
  • .gitlab-ci.yml 3.76 KiB
    image: cirrusci/flutter:latest
    
    stages:
      - update
      - build-debug
      - build-release
      - release
      - deploy
    
    update:
      stage: update
      except:
        - tags
      script:
        - flutter packages get
        - flutter packages upgrade
      interruptible: true
    
    android:build-debug:
      stage: build-debug
      except:
        - tags
      script:
        # Flutter local configuration
        - echo flutter.sdk=$FLUTTER_PATH > android/local.properties
        - echo sdk.dir=$ANDROID_SDK_PATH >> android/local.properties
        - echo flutter.buildMode=debug >> android/local.properties
        # Android signing
        - echo "$ANDROID_DEBUG_KEYSTORE_FILE" | base64 -d > android/app/my.keystore
        - echo storeFile=my.keystore > android/key.properties
        - echo storePassword=$ANDROID_DEBUG_KEYSTORE_PASSWORD >> android/key.properties
        - echo keyAlias=$ANDROID_DEBUG_KEY_ALIAS >> android/key.properties
        - echo keyPassword=$ANDROID_DEBUG_KEY_PASSWORD >> android/key.properties
        # build flutter app
        - flutter packages get
        - flutter clean
        - flutter build apk --debug
        # prepare artifact
        - find . -name "*.apk" # where is my apk?
      artifacts:
        paths:
          - build/app/outputs/apk/debug
        expire_in: 1 week
      interruptible: true
    
    android:build-release:
      stage: build-release
      only:
        - master
      except:
        - tags
      dependencies:
        - android:build-debug
      script:
        # Flutter local configuration
        - echo flutter.sdk=$FLUTTER_PATH > android/local.properties
        - echo sdk.dir=$ANDROID_SDK_PATH >> android/local.properties
        - echo flutter.buildMode=release >> android/local.properties
        # Android signing
        - echo "$ANDROID_KEYSTORE_FILE" | base64 -d > android/app/my.keystore
        - echo storeFile=my.keystore > android/key.properties
        - echo storePassword=$ANDROID_KEYSTORE_PASSWORD >> android/key.properties
        - echo keyAlias=$ANDROID_KEY_ALIAS >> android/key.properties
        - echo keyPassword=$ANDROID_KEY_PASSWORD >> android/key.properties
        # build flutter app
        - VERSION_FILE="$(find . -name 'gradle.properties' | head -n1)"
        - VERSION_NAME="$(grep '^app.versionName=' "${VERSION_FILE}" | cut -d'=' -f2)"
        - VERSION_CODE="$(grep '^app.versionCode=' "${VERSION_FILE}" | cut -d'=' -f2)"
        - TAG_NAME="Release_${VERSION_NAME}_${VERSION_CODE}"
        - echo "${TAG_NAME}"