From f52ea0d505a6350e5bf4d6fea71c2ed1c7678c39 Mon Sep 17 00:00:00 2001 From: Inex Code Date: Tue, 6 Oct 2020 23:02:21 +0000 Subject: [PATCH] Remove gemfiles, deploy web version of furrychat. --- .github/workflows/coverage.yml | 2 - .github/workflows/deploy.yml | 151 +++++++++++++++++++++++++++++++++ Gemfile | 8 -- Gemfile.lock | 48 ----------- 4 files changed, 151 insertions(+), 58 deletions(-) create mode 100644 .github/workflows/deploy.yml delete mode 100644 Gemfile delete mode 100644 Gemfile.lock diff --git a/.github/workflows/coverage.yml b/.github/workflows/coverage.yml index dc3fb34..07597e6 100644 --- a/.github/workflows/coverage.yml +++ b/.github/workflows/coverage.yml @@ -1,8 +1,6 @@ name: Flutter coverage on: - push: - branches: [ yiffed ] pull_request: branches: [ yiffed ] diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..a7ccc85 --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,151 @@ +name: Flutter coverage + +on: + push: + branches: [ yiffed ] + +jobs: + analyze: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + + - name: Get apt deps + run: | + sudo apt-get update > /dev/null + sudo apt-get -y install --no-install-recommends openssl axel lcov gcc g++ ninja-build + + - name: Setup Flutter + uses: subosito/flutter-action@v1.3.2 + with: + channel: beta + + - name: Check formatting + run: flutter format lib/ test/ test_driver/ --set-exit-if-changed + + - name: Analyze code + run: flutter analyze + + + deploy-web: + runs-on: ubuntu-latest + + needs: analyze + + steps: + - uses: actions/checkout@v2 + + - name: Get apt deps + run: | + sudo apt-get update > /dev/null + sudo apt-get -y install --no-install-recommends openssl axel lcov gcc g++ ninja-build + + - name: Setup Flutter + uses: subosito/flutter-action@v1.3.2 + with: + channel: beta + + - name: Prepare env + run: | + sudo apt update + sudo apt install curl -y + rm -r assets/js/package + cd assets/js/ && curl -L 'https://gitlab.com/famedly/libraries/olm/-/jobs/artifacts/master/download?job=build_js' > olm.zip && cd ../../ + cd assets/js/ && unzip olm.zip && cd ../../ + cd assets/js/ && rm olm.zip && cd ../../ + cd assets/js/ && mv javascript package && cd ../../ + cd web/ && rm sql-wasm.js sql-wasm.wasm && cd ../ + cd web/ && curl -L 'https://github.com/sql-js/sql.js/releases/latest/download/sqljs-wasm.zip' > sqljs-wasm.zip && cd ../ + cd web/ && unzip sqljs-wasm.zip && cd ../ + cd web/ && rm sqljs-wasm.zip && cd ../ + flutter clean + + - name: Configure Flutter + run: flutter config --enable-web && flutter doctor + + - run: flutter pub get + + - name: Build web release + run: flutter build web --release --verbose + + - name: Deploy to GitHub Pages + uses: crazy-max/ghaction-github-pages@v2 + with: + target_branch: gh-pages + build_dir: build/web/ + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + build-android-apk: + runs-on: ubuntu-latest + + needs: analyze + + steps: + - uses: actions/checkout@v2 + + - name: Get apt deps + run: | + sudo apt-get update > /dev/null + sudo apt-get -y install --no-install-recommends openssl axel lcov gcc g++ ninja-build + + - name: Setup Flutter + uses: subosito/flutter-action@v1.3.2 + with: + channel: beta + + - name: Set up secrets + run: | + cd android && echo $SIGN_KEY | base64 --decode --ignore-garbage > key.jks && cd .. + cd android && echo "storePassword=${SIGN_KEY_PASS}" >> key.properties && cd .. + cd android && echo "keyPassword=${SIGN_KEY_PASS}" >> key.properties && cd .. + cd android && echo "keyAlias=key" >> key.properties && cd .. + cd android && echo "storeFile=../key.jks" >> key.properties && cd .. + cd android/app && echo $GOOGLE_SERVICES >> google-services.json && cd ../.. + + - name: Get Flutter deps + run: flutter pub get + + - name: Build release apk + run: | + flutter build apk --release + + - uses: actions/upload-artifact@v2 + with: + name: FurryChat.apk + path: build/app/outputs/apk/release/app-release.apk + + build-linux: + runs-on: ubuntu-latest + + needs: analyze + + steps: + - uses: actions/checkout@v2 + + - name: Get apt deps + run: | + sudo apt-get update > /dev/null + sudo apt-get -y install --no-install-recommends openssl axel lcov gcc g++ ninja-build clang cmake pkg-config libgtk-3-dev libblkid-dev tar + + - name: Setup Flutter + uses: subosito/flutter-action@v1.3.2 + with: + channel: dev + + - name: Get Flutter deps + run: | + flutter config --enable-linux-desktop + flutter pub get + + - name: Build release apk + run: | + flutter build linux --release + tar czf build/FurryChat-Linux.tar.gz build/linux/release/bundle/ + + - uses: actions/upload-artifact@v2 + with: + name: FurryChat-Linux.tar.gz + path: build/FurryChat-Linux.tar.gz diff --git a/Gemfile b/Gemfile deleted file mode 100644 index eb76145..0000000 --- a/Gemfile +++ /dev/null @@ -1,8 +0,0 @@ -source "https://rubygems.org" -ruby RUBY_VERSION - -# This will help ensure the proper Jekyll version is running. -gem "jekyll", "3.4.0" - -# Windows does not include zoneinfo files, so bundle the tzinfo-data gem -gem 'tzinfo-data', platforms: [:mingw, :mswin, :x64_mingw, :jruby] diff --git a/Gemfile.lock b/Gemfile.lock deleted file mode 100644 index b6bcc93..0000000 --- a/Gemfile.lock +++ /dev/null @@ -1,48 +0,0 @@ -GEM - remote: https://rubygems.org/ - specs: - addressable (2.5.0) - public_suffix (~> 2.0, >= 2.0.2) - colorator (1.1.0) - ffi (1.9.17) - forwardable-extended (2.6.0) - jekyll (3.4.0) - addressable (~> 2.4) - colorator (~> 1.0) - jekyll-sass-converter (~> 1.0) - jekyll-watch (~> 1.1) - kramdown (~> 1.3) - liquid (~> 3.0) - mercenary (~> 0.3.3) - pathutil (~> 0.9) - rouge (~> 1.7) - safe_yaml (~> 1.0) - jekyll-sass-converter (1.5.0) - sass (~> 3.4) - jekyll-watch (1.5.0) - listen (~> 3.0, < 3.1) - kramdown (1.13.2) - liquid (3.0.6) - listen (3.0.8) - rb-fsevent (~> 0.9, >= 0.9.4) - rb-inotify (~> 0.9, >= 0.9.7) - mercenary (0.3.6) - pathutil (0.14.0) - forwardable-extended (~> 2.6) - public_suffix (2.0.5) - rb-fsevent (0.9.8) - rb-inotify (0.9.8) - ffi (>= 0.5.0) - rouge (1.11.1) - safe_yaml (1.0.4) - sass (3.4.23) - -PLATFORMS - ruby - -DEPENDENCIES - jekyll (= 3.4.0) - tzinfo-data - -RUBY VERSION - ruby 2.3.1p112