From 2cd31d5305db7c518ab06a6445b96f7ba03e292a Mon Sep 17 00:00:00 2001 From: Nishant Srivastava Date: Tue, 4 Jan 2022 15:12:57 +0100 Subject: [PATCH] [Release] 3.1.5 (#132) * Add RevenueCat (#122) * Added Github actions (#120) --- .github/workflows/firebase-hosting-merge.yml | 42 ++++++++++++++++++ .../firebase-hosting-pull-request.yml | 39 ++++++++++++++++ .gitignore | 1 - Readme.md | 14 +++--- package-lock.json | 6 +++ .../images/third_party_logos/revenuecat.png | Bin 0 -> 11298 bytes src/includes/yaml/thirdpartyservices.yml | 7 +++ 7 files changed, 103 insertions(+), 6 deletions(-) create mode 100644 .github/workflows/firebase-hosting-merge.yml create mode 100644 .github/workflows/firebase-hosting-pull-request.yml create mode 100644 package-lock.json create mode 100644 public/images/third_party_logos/revenuecat.png diff --git a/.github/workflows/firebase-hosting-merge.yml b/.github/workflows/firebase-hosting-merge.yml new file mode 100644 index 0000000..5c966dd --- /dev/null +++ b/.github/workflows/firebase-hosting-merge.yml @@ -0,0 +1,42 @@ +# This file was auto-generated by the Firebase CLI +# https://github.com/firebase/firebase-tools + +name: Deploy to Firebase Hosting on merge +'on': + push: + branches: + - master +jobs: + build_and_deploy: + runs-on: ubuntu-latest + steps: + - name: Checkout the code + uses: actions/checkout@v2 + + - name: Install Node + uses: actions/setup-node@v2 + with: + node-version: '14' + cache: 'npm' + + - name: Install Pug CLI + run: npm install -g pug-cli + + - name: Install SASS CLI + run: npm install -g sass + + - name: Install JS-YAML CLI + run: npm install -g js-yaml + + - name: Render the website from templates + run: | + chmod +x ./render.sh + ./render.sh + + - name: Firebase Deploy to Production + uses: FirebaseExtended/action-hosting-deploy@v0 + with: + repoToken: '${{ secrets.GITHUB_TOKEN }}' + firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_APP_PRIVACY_POLICY_GENERATOR }}' + channelId: live + projectId: app-privacy-policy-generator diff --git a/.github/workflows/firebase-hosting-pull-request.yml b/.github/workflows/firebase-hosting-pull-request.yml new file mode 100644 index 0000000..788d4fa --- /dev/null +++ b/.github/workflows/firebase-hosting-pull-request.yml @@ -0,0 +1,39 @@ +# This file was auto-generated by the Firebase CLI +# https://github.com/firebase/firebase-tools + +name: Deploy to Firebase Hosting on PR +'on': pull_request +jobs: + build_and_preview: + if: '${{ github.event.pull_request.head.repo.full_name == github.repository }}' + runs-on: ubuntu-latest + steps: + - name: Checkout the code + uses: actions/checkout@v2 + + - name: Install Node + uses: actions/setup-node@v2 + with: + node-version: '14' + cache: 'npm' + + - name: Install Pug CLI + run: npm install -g pug-cli + + - name: Install SASS CLI + run: npm install -g sass + + - name: Install JS-YAML CLI + run: npm install -g js-yaml + + - name: Render the website from templates + run: | + chmod +x ./render.sh + ./render.sh + + - name: Firebase Deploy to Preview Channel + uses: FirebaseExtended/action-hosting-deploy@v0 + with: + repoToken: '${{ secrets.GITHUB_TOKEN }}' + firebaseServiceAccount: '${{ secrets.FIREBASE_SERVICE_ACCOUNT_APP_PRIVACY_POLICY_GENERATOR }}' + projectId: app-privacy-policy-generator diff --git a/.gitignore b/.gitignore index 0d239fc..ccb89ea 100644 --- a/.gitignore +++ b/.gitignore @@ -3,4 +3,3 @@ *.cache node_modules/ dist/ -package-lock.json diff --git a/Readme.md b/Readme.md index 3251dfb..6c0df73 100644 --- a/Readme.md +++ b/Readme.md @@ -27,7 +27,11 @@ -# Contribution +## Status Badges + +[![Deploy to Firebase Hosting on PR](https://github.com/nisrulz/app-privacy-policy-generator/actions/workflows/firebase-hosting-pull-request.yml/badge.svg)](https://github.com/nisrulz/app-privacy-policy-generator/actions/workflows/firebase-hosting-pull-request.yml) + +## Contribution [Read the dev docs](dev-doc.md) to @@ -35,7 +39,7 @@ - [Add a new template for Privacy Policy or Terms & Conditions](https://github.com/nisrulz/app-privacy-policy-generator/blob/master/dev-doc.md#development) - [Update the web app for new features/bugfixes](https://github.com/nisrulz/app-privacy-policy-generator/blob/master/dev-doc.md#development) -# Pull Requests +## Pull Requests I welcome and encourage all pull requests. It usually will take me within 24-48 hours to respond to any issue or request. Here are some basic rules to follow to ensure timely addition of your request: @@ -45,11 +49,11 @@ I welcome and encourage all pull requests. It usually will take me within 24-48 4. Check for existing [issues](https://github.com/nisrulz/app-privacy-policy-generator/issues) first, before filing an issue. 5. Have fun! -# Author & Contributors +## Author & Contributors This project was created by [Nishant Srivastava](https://github.com/nisrulz/nisrulz.github.io#nishant-srivastava) but hopefully developed and maintained by many others. See the [the list of contributors here](https://github.com/nisrulz/app-privacy-policy-generator/graphs/contributors). -# Ways You Can Help/Support this project +## Ways You Can Help/Support this project - **Star** this repository and tell all your friends about it. - **Watch** for new releases to get an update if something happens. @@ -73,7 +77,7 @@ Thanks for your interest in this software :heart: App Privacy Policy GeneratorApp Privacy Policy GeneratorApp Privacy Policy Generator -### License +## License Copyright 2017-Present Nishant Srivastava diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..43999da --- /dev/null +++ b/package-lock.json @@ -0,0 +1,6 @@ +{ + "name": "app-privacy-policy-generator", + "lockfileVersion": 2, + "requires": true, + "packages": {} +} diff --git a/public/images/third_party_logos/revenuecat.png b/public/images/third_party_logos/revenuecat.png new file mode 100644 index 0000000000000000000000000000000000000000..38f9d6c885902ff9133d694cc54226cb5806f8ef GIT binary patch literal 11298 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