Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

CI: Add checks for linting, building APK and building web #197

Closed
wants to merge 2 commits into from
Closed
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions .github/workflows/checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Checks
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
name: Checks
name: build-checks


on:
push:
pull_request:

# everyday at 3 am UTC
schedule:
- cron: '0 3 * * *'

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# everyday at 3 am UTC
schedule:
- cron: '0 3 * * *'

jobs:
lint-check:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up Java for Flutter
uses: actions/setup-java@v1
with:
java-version: '12.x'
- name: Set up Flutter
uses: subosito/flutter-action@v1
with:
channel: 'stable'
- name: Lint
run: |
flutter pub get
flutter analyze

build-apk-and-web:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's separate out the builds for web and android.

needs: lint-check
runs-on: ${{ matrix.os }}
strategy:
matrix:
os: [ubuntu-latest, windows-latest, macOS-latest]

steps:
- uses: actions/checkout@v2
- name: Set up Java for Flutter
uses: actions/setup-java@v1
with:
java-version: '12.x'
- name: Set up Flutter
uses: subosito/flutter-action@v1
with:
channel: 'stable'
- name: Install dependencies
run: flutter pub get
- name: Build APK
run: flutter build apk
- name: Build web
run: flutter build web
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,9 @@
/build/
.flutter-plugins-dependencies

# Web related
lib/generated_plugin_registrant.dart

# Android related
**/android/**/gradle-wrapper.jar
**/android/.gradle
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
<p align="center">
<a href="https://github.com/builtree/simulate">
<img src="https://raw.githubusercontent.com/builtree/assets/simulate/documentation/SimulateTitle.svg" width=40%>
</img>
<img src="https://raw.githubusercontent.com/builtree/assets/simulate/documentation/SimulateTitle.svg" width=40%/>
</a>
</p>

[![Gitter](https://badges.gitter.im/codEd-org/simulate.svg)](https://gitter.im/codEd-org/simulate?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge)
[![Checks](https://github.com/builtree/simulate/actions/workflows/checks.yml/badge.svg)](https://github.com/builtree/simulate/actions/workflows/checks.yml)

Welcome to Simulate! Simulate aims to be a collection of simulations and visualizations from various domains like mathematics, physics, computer science etc. in a cross platform app made using [Flutter](https://flutter.dev/).

Expand Down
29 changes: 29 additions & 0 deletions analysis_options.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
# This file configures the analyzer, which statically analyzes Dart code to
# check for errors, warnings, and lints.
#
# The issues identified by the analyzer are surfaced in the UI of Dart-enabled
# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be
# invoked from the command line by running `flutter analyze`.

# The following line activates a set of recommended lints for Flutter apps,
# packages, and plugins designed to encourage good coding practices.
include: package:flutter_lints/flutter.yaml

linter:
# The lint rules applied to this project can be customized in the
# section below to disable rules from the `package:flutter_lints/flutter.yaml`
# included above or to enable additional rules. A list of all available lints
# and their documentation is published at
# https://dart-lang.github.io/linter/lints/index.html.
#
# Instead of disabling a lint rule for the entire project in the
# section below, it can also be suppressed for a single line of code
# or a specific dart file by using the `// ignore: name_of_lint` and
# `// ignore_for_file: name_of_lint` syntax on the line or in the file
# producing the lint.
rules:
# avoid_print: false # Uncomment to disable the `avoid_print` rule
# prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule

# Additional information about this file can be found at
# https://dart.dev/guides/language/analysis-options
1 change: 1 addition & 0 deletions pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ dependencies:
dev_dependencies:
flutter_test:
sdk: flutter
flutter_lints: ^1.0.0

flutter:
uses-material-design: true
Expand Down