Skip to content

Commit

Permalink
Merge pull request #3 from shadow578/develop
Browse files Browse the repository at this point in the history
Release 1.1
  • Loading branch information
shadow578 authored Aug 8, 2021
2 parents 7fa236f + e1ae83e commit 5dd1587
Show file tree
Hide file tree
Showing 126 changed files with 6,137 additions and 5,280 deletions.
1 change: 1 addition & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
ko_fi: shadow578
3 changes: 3 additions & 0 deletions .github/ISSUE_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
?! How did you get here? ?!

If you want to create a issue, have a look [here](https://github.com/shadow578/Yodel/issues)
104 changes: 104 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
name: 🐞 Bug Report
description: Report a bug to help improve Yodel
title: "[BUG]: "
labels: [bug]
body:
# a short welcome to the user <3
- type: markdown
attributes:
value: |
Thank you for taking the time to fill out this bug report!
# app version (totally not a trick- question :P)
- type: input
id: app-version
attributes:
label: Yodel version
description: You can find the Yodel version in the app settings
placeholder: |
Example: '1.0'
validations:
required: true

# android version
- type: input
id: android-version
attributes:
label: Android Version
description: You can find your Android version somewhere in the Android Settings (often in 'About this Phone')
placeholder: |
Example: 'Android 11'
validations:
required: true

# device model
- type: input
id: device-model
attributes:
label: Device
description: Please State your Device model and Manufacturer
placeholder: |
Example: 'Google Pixel 4a'
validations:
required: true

# issue details
- type: textarea
id: steps-to-reproduce
attributes:
label: Steps to reproduce
description: Explain what you did when the bug happened
placeholder: |
1. Click This
2. Do that
3. Stuff breaks
validations:
required: true

# what should happen
- type: textarea
id: expected-behavior
attributes:
label: Expected Behavior
description: Explain what should've happened
placeholder: |
This thing should have happened
validations:
required: true

# what actually happened
- type: textarea
id: actual-behavior
attributes:
label: Actual Behavior
description: Explain what actually happened
placeholder: |
This thing actually happened
validations:
required: true

# extra details
- type: textarea
id: extra
attributes:
label: Extra Details
placeholder: |
Additional Details, Attachments, or logs
# acknowledgements before finishing the issue
- type: checkboxes
id: acknowledgements
attributes:
label: Acknowledgements
description: Please make sure to read through this carefully. IF you skimmed through this, your issue will be closed.
options:
- label: I have searched the existing issues and this is a **new** bug
required: true
- label: I have written a **informative** title
required: true
- label: I filled out **all** the information requested in this form
required: true
- label: I have updated to the **[latest app version](https://github.com/shadow578/Yodel/releases/latest)**
required: true
- label: My Phone runs on at least Android 6.0
required: true
1 change: 1 addition & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
blank_issues_enabled: false
45 changes: 45 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: ⭐ Feature Request
description: Suggest a feature that would improve Yodel
title: "[FEATURE]: "
labels: [enhancement]
body:
# a short welcome to the user <3
- type: markdown
attributes:
value: |
Thank you for your interest in the development of Yodel!
# feature description
- type: textarea
id: feature-description
attributes:
label: Feature Description
description: Describe your feature here
placeholder: |
You should add this thing...
validations:
required: true

# extra details
- type: textarea
id: extra
attributes:
label: Extra Details
placeholder: |
Additional Details, Attachments, maybe mockups for UI changes, ...
# acknowledgements before finishing the issue
- type: checkboxes
id: acknowledgements
attributes:
label: Acknowledgements
description: Please make sure to read through this carefully. IF you skimmed through this, your feature request will be closed.
options:
- label: I have searched the existing issues and this is a **new** feature request
required: true
- label: I have written a **informative** title
required: true
- label: I filled out **all** the information requested in this form
required: true
- label: I have updated to the **[latest app version](https://github.com/shadow578/Yodel/releases/latest)** and the feature is still missing
required: true
20 changes: 20 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@

<!-- provide a short description of your PR. What did you change, what problems does it solve? -->

---

## Code Quality

<!-- please make sure that you check all these -->
<!-- if you ONLY added a new locale, this doesn't really apply to you. -->

- [ ] I followed the [Code Style Guidelines](https://github.com/shadow578/Yodel/blob/develop/CONTRIBUTING.md#code-style-guidelines)
- [ ] All Unit- and Instrumented Tests still pass
- [ ] My Code generated no new warnings (Analyze > Inspect Code)
- [ ] I updated the documentation <!-- (if needed; most of the time KDoc will be enough) -->


<!-- _
.__(.)< (SHUBA)
\___)
(you may not remove this) -->
6 changes: 6 additions & 0 deletions .github/gh-gradle.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# suppress inspection "UnusedProperty" for whole file
org.gradle.daemon=false
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx5g -XX:+UseParallelGC
org.gradle.workers.max=2
kotlin.incremental=false
Binary file added .github/res/app_icon_smol.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed .github/res/ic_launcher_round.png
Binary file not shown.
157 changes: 157 additions & 0 deletions .github/workflows/auto_build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,157 @@
# Action to automatically build the project when a new tag is created
# always uses the 'main' branch for building
# also, this action runs unit tests before the build (only published as artifact)

name: Build and Publish
on:
# new tag pushed
push:
tags:
- '*'

# and manual run
workflow_dispatch:
jobs:
# build release
build_apk:
name: Build APK
runs-on: ubuntu-latest
timeout-minutes: 10
env:
JAVA_TOOL_OPTIONS: -Xmx5g -XX:+UseParallelGC
steps:
# setup env
- uses: actions/checkout@v2
with:
ref: main
- uses: actions/setup-java@v1
with:
java-version: 11
- run: |
mkdir -p ~/.gradle
cp .github/gh-gradle.properties ~/.gradle/gradle.properties
chmod +x ./gradlew
# write sign.properties
- name: Write Signing Config
run: |
# write keystore
echo "${{ secrets.KEY_STORE }}" | base64 -d > ./keystore.jks
# write sign.properties
cat <<EOT > ./sign.properties
# key alias to use for application signing
key_alias=${{ secrets.ALIAS }}
# key password
key_password=${{ secrets.KEY_PASSWORD }}
# path of the keystore to use for signing
# relative to the project root (where this file also is)
keystore_path=keystore.jks
# password for the keystore
keystore_password=${{ secrets.KEY_STORE_PASSWORD}}
EOT
# run gradle build task
- name: Run build
uses: eskatos/gradle-command-action@v1
with:
arguments: testDebugUnitTest assembleRelease
wrapper-cache-enabled: true
dependencies-cache-enabled: true
configuration-cache-enabled: true

# delete universal APK to slim down artifact upload
- run: rm -f ./app/build/outputs/apk/release/app-universal-release.apk

# print contents of artifact dir
- run: ls ./app/build/outputs/apk/release

# print contents of artifact dir
- run: ls ./app/build/test-results/testDebugUnitTest

# upload results
- name: Upload Test Results
uses: actions/upload-artifact@v2
if: always()
with:
name: unit-test-results
path: ./app/build/test-results/testDebugUnitTest/*.xml

# upload artifacts
- name: Upload Artifacts
uses: actions/upload-artifact@v2
with:
name: apks
path: ./app/build/outputs/apk/release/*.apk

# release to github
release_github:
name: Release On Github
needs: build_apk
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
# download artifacts
- run: mkdir ./release/
- name: Download Artifacts
uses: actions/download-artifact@v2
with:
name: apks
path: ./release/

# print contents of artifact dir
- run: ls ./release

# calculate file hashes
- name: Calculate Hashes
id: apk_hash
shell: bash
run: |
echo ::set-output name=arm::$(sha256sum "./release/app-armeabi-v7a-release.apk")
echo ::set-output name=arm64::$(sha256sum "./release/app-arm64-v8a-release.apk")
echo ::set-output name=x86::$(sha256sum "./release/app-x86-release.apk")
echo ::set-output name=x64::$(sha256sum "./release/app-x86_64-release.apk")
# print hashes
- run: |
echo ${{ steps.apk_hash.outputs.arm }}
echo ${{ steps.apk_hash.outputs.arm64 }}
echo ${{ steps.apk_hash.outputs.x86 }}
echo ${{ steps.apk_hash.outputs.x64 }}
# create new release
- name: Create the Release
uses: ncipollo/release-action@v1
with:
body: |
---
APK Hashes:
- ${{ steps.apk_hash.outputs.arm }}
- ${{ steps.apk_hash.outputs.arm64 }}
- ${{ steps.apk_hash.outputs.x86 }}
- ${{ steps.apk_hash.outputs.x64 }}
> 🤖 this release was built automatically using Github Actions
artifacts: "./release/*.apk"
allowUpdates: true
omitBody: false
omitBodyDuringUpdate: false
token: ${{ secrets.GITHUB_TOKEN }}

# remove artifacts
delete_artifacts:
name: Delete Artifacts
needs: release_github
runs-on: ubuntu-latest
timeout-minutes: 10
steps:
- name: Delete Artifacts
uses: geekyeggo/delete-artifact@v1
with:
name: apks
failOnError: false
Loading

0 comments on commit 5dd1587

Please sign in to comment.