From 82b44b6e666bb1a53239d3428c0ccc98d9c47253 Mon Sep 17 00:00:00 2001 From: Kingkor Roy Tirtho Date: Wed, 13 Sep 2023 12:13:26 +0600 Subject: [PATCH] cd: updated circle ci build config --- .circleci/config.yml | 63 +++++++++++++++++++++++++++++--------------- pubspec.lock | 38 +++++++++++++++----------- 2 files changed, 65 insertions(+), 36 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 4175da6c..9136b5ec 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -1,26 +1,47 @@ -# Use the latest 2.1 version of CircleCI pipeline process engine. -# See: https://circleci.com/docs/configuration-reference version: 2.1 -# Define a job to be invoked later in a workflow. -# See: https://circleci.com/docs/configuration-reference/#jobs -jobs: - say-hello: - # Specify the execution environment. You can specify an image from Docker Hub or use one of our convenience images from CircleCI's Developer Hub. - # See: https://circleci.com/docs/configuration-reference/#executor-job - docker: - - image: cimg/base:stable - # Add steps to the job - # See: https://circleci.com/docs/configuration-reference/#steps - steps: - - checkout - - run: - name: "Say hello" - command: "echo Hello, World!" +orbs: + flutter: circleci/flutter@2.0.2 + +jobs: + flutter_linux_arm: + machine: + image: ubuntu-2004:current + resource_class: arm.medium + steps: + - flutter/install_sdk_and_pub: + version: 3.13.2 + - checkout + - run: | + sudo apt-get update -y && + sudo apt-get install -y tar clang cmake ninja-build pkg-config libgtk-3-dev make python3-pip python3-setuptools desktop-file-utils libgdk-pixbuf2.0-dev fakeroot strace fuse libunwind-dev locate patchelf gir1.2-appindicator3-0.1 libappindicator3-1 libappindicator3-dev libsecret-1-0 libjsoncpp25 libsecret-1-dev libjsoncpp-dev libnotify-bin libnotify-dev mpv libmpv-dev + + - run: + name: Add .Env + command: echo $DOTENV | base64 --decode >> .env + + - run: | + flutter config --enable-linux-desktop + flutter pub get + dart run build_runner build --delete-conflicting-outputs --enable-experiment=records,patterns + + - run: | + dart pub global activate flutter_distributor + flutter build linux --target-platform=linux-arm64 + mkdir -p /tmp/spotube-tar + cp -r build/linux/arm64/release/bundle/* /tmp/spotube-tar + cp linux/spotube.desktop /tmp/spotube-tar + cp assets/spotube-logo.png /tmp/spotube-tar + cp linux/com.github.KRTirtho.Spotube.appdata.xml /tmp/spotube-tar + tar -cJf build/spotube-linux-3.1.1-aarch64.tar.xz -C /tmp/spotube-tar . + rm -rf /tmp/spotube-tar + + - persist_to_workspace: + root: build + paths: + - spotube-linux-3.1.1-aarch64.tar.xz -# Orchestrate jobs using workflows -# See: https://circleci.com/docs/configuration-reference/#workflows workflows: - say-hello-workflow: + build_flutter_for_arm_workflow: jobs: - - say-hello + - flutter_linux_arm diff --git a/pubspec.lock b/pubspec.lock index 21c864b6..909c7d3b 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -318,10 +318,10 @@ packages: dependency: "direct main" description: name: collection - sha256: "4a07be6cb69c84d677a6c3096fcf960cc3285a8330b4603e0d463d15d9bd934c" + sha256: f092b211a4319e98e5ff58223576de6c2803db36221657b46c82574721240687 url: "https://pub.dev" source: hosted - version: "1.17.1" + version: "1.17.2" color: dependency: transitive description: @@ -954,10 +954,10 @@ packages: dependency: "direct main" description: name: intl - sha256: a3715e3bc90294e971cb7dc063fbf3cd9ee0ebf8604ffeafabd9e6f16abbdbe6 + sha256: "3bc132a9dbce73a7e4a21a17d06e1878839ffbf975568bc875c60537824b0c4d" url: "https://pub.dev" source: hosted - version: "0.18.0" + version: "0.18.1" introduction_screen: dependency: "direct main" description: @@ -1050,18 +1050,18 @@ packages: dependency: transitive description: name: matcher - sha256: "6501fbd55da300384b768785b83e5ce66991266cec21af89ab9ae7f5ce1c4cbb" + sha256: "1803e76e6653768d64ed8ff2e1e67bea3ad4b923eb5c56a295c3e634bad5960e" url: "https://pub.dev" source: hosted - version: "0.12.15" + version: "0.12.16" material_color_utilities: dependency: transitive description: name: material_color_utilities - sha256: d92141dc6fe1dad30722f9aa826c7fbc896d021d792f80678280601aff8cf724 + sha256: "9528f2f296073ff54cb9fee677df673ace1218163c3bc7628093e7eed5203d41" url: "https://pub.dev" source: hosted - version: "0.2.0" + version: "0.5.0" media_kit: dependency: "direct main" description: @@ -1647,10 +1647,10 @@ packages: dependency: transitive description: name: source_span - sha256: dd904f795d4b4f3b870833847c461801f6750a9fa8e61ea5ac53f9422b31f250 + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" url: "https://pub.dev" source: hosted - version: "1.9.1" + version: "1.10.0" spotify: dependency: "direct main" description: @@ -1791,10 +1791,10 @@ packages: dependency: transitive description: name: test_api - sha256: eb6ac1540b26de412b3403a163d919ba86f6a973fe6cc50ae3541b80092fdcfb + sha256: "75760ffd7786fffdfb9597c35c5b27eaeec82be8edfb6d71d32651128ed7aab8" url: "https://pub.dev" source: hosted - version: "0.5.1" + version: "0.6.0" time: dependency: transitive description: @@ -1967,10 +1967,10 @@ packages: dependency: transitive description: name: vm_service - sha256: f6deed8ed625c52864792459709183da231ebf66ff0cf09e69b573227c377efe + sha256: c620a6f783fa22436da68e42db7ebbf18b8c44b9a46ab911f666ff09ffd9153f url: "https://pub.dev" source: hosted - version: "11.3.0" + version: "11.7.1" watcher: dependency: transitive description: @@ -1979,6 +1979,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.0.2" + web: + dependency: transitive + description: + name: web + sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10 + url: "https://pub.dev" + source: hosted + version: "0.1.4-beta" web_socket_channel: dependency: transitive description: @@ -2069,5 +2077,5 @@ packages: source: hosted version: "2.0.1" sdks: - dart: ">=3.0.0 <4.0.0" + dart: ">=3.1.0-185.0.dev <4.0.0" flutter: ">=3.10.0"