Skip to content

Commit

Permalink
initial commit in fresh repo
Browse files Browse the repository at this point in the history
  • Loading branch information
adueck committed Aug 14, 2024
0 parents commit 8b188ce
Show file tree
Hide file tree
Showing 267 changed files with 125,555 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .firebaserc
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"projects": {
"default": "lingdocs"
}
}
14 changes: 14 additions & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# These are supported funding model platforms

github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2]
patreon: # Replace with a single Patreon username
open_collective: # Replace with a single Open Collective username
ko_fi: # Replace with a single Ko-fi username
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
liberapay: # Replace with a single Liberapay username
issuehunt: # Replace with a single IssueHunt username
lfx_crowdfunding: # Replace with a single LFX Crowdfunding project-name e.g., cloud-foundry
polar: # Replace with a single Polar username
buy_me_a_coffee: lingdocsdev
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
58 changes: 58 additions & 0 deletions .github/workflows/deploy-account.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: deploy account
on:
push:
branches:
- master
- dev
paths:
- "account/**"
- ".github/workflows/deploy-account.yml"
workflow_dispatch:

jobs:
new-deploy-account:
name: Deploy
runs-on: ubuntu-latest
env:
LINGDOCS_NPM_TOKEN: ${{ secrets.LINGDOCS_NPM_TOKEN }}
steps:
- uses: actions/checkout@v3
- name: Cache NPM deps
uses: actions/cache@v3
# TODO: for some reason this cache is not helping
with:
key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/package-lock.json') }}
path: ~/.npm
- run: |
npm install
# TODO: could save a bunch of install time by not requiring ps-react in the website/account-types
cd website
npm install
cd ..
cd account
npm install
npm run build
npm prune --production
cd ..
tar --exclude-vcs -czf account.tar.gz account
- name: copy tarball to server
uses: appleboy/scp-action@v0.1.4
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
port: ${{ secrets.PORT }}
key: ${{ secrets.KEY }}
source: "account.tar.gz"
target: "."
- name: unpack tarball and restart app
uses: appleboy/ssh-action@v1.0.0
with:
host: ${{ secrets.HOST }}
username: ${{ secrets.USERNAME }}
key: ${{ secrets.KEY }}
port: ${{ secrets.PORT }}
script: |
rm -rf apps/live/account
tar -xzf account.tar.gz -C ~/apps/live
rm account.tar.gz
pm2 restart account
34 changes: 34 additions & 0 deletions .github/workflows/deploy-functions.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Deploy Functions

on:
push:
branches:
- master
paths:
- "functions/**"
- ".github/workflows/deploy-functions.yml"

workflow_dispatch:

jobs:
deploy-functions:
runs-on: ubuntu-latest
env:
LINGDOCS_NPM_TOKEN: ${{ secrets.LINGDOCS_NPM_TOKEN }}
FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- run: npm install -g firebase-tools
- run: |
cp .npmrc functions
cd website
npm install
cd ..
cd functions
npm install
- name: deploy functions and hosting routes
run: firebase deploy -f --token ${FIREBASE_TOKEN}
43 changes: 43 additions & 0 deletions .github/workflows/functions-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Functions CI

on:
push:
branches:
- master
paths:
- "functions/**"
- ".github/workflows/functions-ci.yml"

workflow_dispatch:

jobs:
build-and-serve-functions:
runs-on: ubuntu-latest
env:
LINGDOCS_NPM_TOKEN: ${{ secrets.LINGDOCS_NPM_TOKEN }}
FIREBASE_TOKEN: ${{ secrets.FIREBASE_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- run: npm install -g firebase-tools
- name: build functions
run: |
cp .npmrc functions
cd website
npm install
cd ..
cd functions
npm install
npm run build
- name: start up emulator once
run: |
cd functions
firebase functions:config:get --token ${FIREBASE_TOKEN} > .runtimeconfig.json
echo '#!/bin/bash' > empty.sh
chmod +x empty.sh
firebase emulators:exec ./empty.sh --only functions --token ${FIREBASE_TOKEN}
rm .runtimeconfig.json
rm empty.sh
31 changes: 31 additions & 0 deletions .github/workflows/publish-types.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Publish Types

on:
push:
branches: ["master"]

workflow_dispatch:

jobs:
publish:
runs-on: ubuntu-latest
env:
LINGDOCS_NPM_TOKEN: ${{ secrets.LINGDOCS_NPM_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- name: Check if version has been updated
id: check
uses: EndBug/version-check@v2
with:
diff-search: true
token: ${{ secrets.GITHUB_TOKEN }}
- name: Publish when version changed
if: steps.check.outputs.changed == 'true'
run: |
npm install
npm run build
npm publish
35 changes: 35 additions & 0 deletions .github/workflows/website-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Website CI

on:
push:
branches:
- master
paths:
- "website/**"
- ".github/workflows/website-ci.yml"
pull_request:
branches: ["*"]
paths:
- "website/**"
- ".github/workflows/website-ci.yml"

workflow_dispatch:

jobs:
build-and-test:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./website
env:
LINGDOCS_NPM_TOKEN: ${{ secrets.LINGDOCS_NPM_TOKEN }}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: 20
cache: "npm"
- run: |
npm install
npm run build
npm run test
99 changes: 99 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,99 @@
# Logs
logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
firebase-debug.log*
firebase-debug.*.log*

# Firebase cache
.firebase/

# Types Dist
dist

# Firebase config

# Uncomment this if you'd like others to create their own Firebase project.
# For a team working on the same Firebase project(s), it is recommended to leave
# it commented so all members can deploy to the same project(s) in .firebaserc.
# .firebaserc

# Runtime data
pids
*.pid
*.seed
*.pid.lock

# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov

# Coverage directory used by tools like istanbul
coverage

# nyc test coverage
.nyc_output

# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt

# Bower dependency directory (https://bower.io/)
bower_components

# node-waf configuration
.lock-wscript

# Compiled binary addons (http://nodejs.org/api/addons.html)
build/Release

# Dependency directories
node_modules/

# Optional npm cache directory
.npm

# Optional eslint cache
.eslintcache

# Optional REPL history
.node_repl_history

# Output of 'npm pack'
*.tgz

# Yarn Integrity file
.yarn-integrity

# dotenv environment variables file
.env

# Firebase functions config/env for running functions locally
.runtimeconfig.json

# General
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon

# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
.com.apple.timemachine.donotpresent

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
2 changes: 2 additions & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
@lingdocs:registry=https://npm.lingdocs.com
//npm.lingdocs.com/:_authToken=${LINGDOCS_NPM_TOKEN}
Loading

0 comments on commit 8b188ce

Please sign in to comment.