Skip to content

Commit

Permalink
init
Browse files Browse the repository at this point in the history
  • Loading branch information
Junjiequan committed Apr 9, 2024
1 parent 721adc8 commit 18d763b
Show file tree
Hide file tree
Showing 780 changed files with 104,996 additions and 0 deletions.
5 changes: 5 additions & 0 deletions .betterer.results
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
// BETTERER RESULTS V2.
//
// If this file contains merge conflicts, use `betterer merge` to automatically resolve them:
// https://phenomnomnominal.github.io/betterer/docs/results-file/#merge
//
7 changes: 7 additions & 0 deletions .betterer.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import { typescript } from "@betterer/typescript";

export default {
"stricter compilation": () => typescript("./tsconfig.json", {
strict: true,
}),
};
17 changes: 17 additions & 0 deletions .browserslistrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# This file is used by the build system to adjust CSS and JS output to support the specified browsers below.
# For additional information regarding the format and rule options, please see:
# https://github.com/browserslist/browserslist#queries

# For the full list of supported browsers by the Angular framework, please see:
# https://angular.io/guide/browser-support

# You can see what browsers were selected by your queries by running:
# npx browserslist

last 1 Chrome version
last 1 Firefox version
last 2 Edge major versions
last 2 Safari major versions
last 2 iOS major versions
Firefox ESR
not IE 11 # Angular supports IE 11 only as an opt-in. To opt-in, remove the 'not' prefix on this line.
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
node_modules
16 changes: 16 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Editor configuration, see https://editorconfig.org
root = true

[*]
charset = utf-8
indent_style = space
indent_size = 2
insert_final_newline = true
trim_trailing_whitespace = true

[*.ts]
quote_type = double

[*.md]
max_line_length = off
trim_trailing_whitespace = false
97 changes: 97 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,97 @@
{
"root": true,
"ignorePatterns": ["projects/**/*"],
"plugins": ["@typescript-eslint/eslint-plugin"],
"overrides": [
{
"files": ["*.ts"],
"parserOptions": {
"project": ["tsconfig.json"],
"createDefaultProgram": true
},
"extends": [
"eslint:recommended",
"plugin:prettier/recommended",
"plugin:@typescript-eslint/recommended",
"plugin:@angular-eslint/recommended",
"plugin:@angular-eslint/template/process-inline-templates"
],
"rules": {
"@angular-eslint/directive-selector": [
"error",
{
"type": "attribute",
"prefix": "app",
"style": "camelCase"
}
],
"@angular-eslint/component-selector": "off",
"@typescript-eslint/member-delimiter-style": [
"error",
{
"multiline": {
"delimiter": "semi",
"requireLast": true
},
"singleline": {
"delimiter": "semi",
"requireLast": false
}
}
],
"@typescript-eslint/member-ordering": [
"error",
{
"default": {
"memberTypes": [
"private-static-field",
"protected-static-field",
"public-static-field",
"private-static-method",
"protected-static-method",
"public-static-method",
"private-instance-field",
"protected-instance-field",
"public-instance-field",
"private-constructor",
"protected-constructor",
"public-constructor",
"private-instance-method",
"protected-instance-method",
"public-instance-method"
]
}
}
],
"@typescript-eslint/naming-convention": [
"error",
{
"format": ["camelCase", "snake_case", "UPPER_CASE"],
"selector": ["variable", "function"]
}
],
"@typescript-eslint/no-inferrable-types": "error",
"@typescript-eslint/no-explicit-any": "warn",
"@typescript-eslint/no-unused-vars": "warn",
"@typescript-eslint/no-unsafe-declaration-merging": "warn",
"@typescript-eslint/quotes": [
"error",
"double",
{
"allowTemplateLiterals": true
}
],
"@typescript-eslint/semi": ["error", "always"]
}
},
{
"files": ["*.html"],
"extends": ["plugin:@angular-eslint/template/recommended"],
"rules": {}
},
{
"files": ["*.ts"],
"extends": ["plugin:ngrx/recommended"]
}
]
}
19 changes: 19 additions & 0 deletions .github/ISSUE_TEMPLATE/custom.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
name: Custom issue template
about: Describe this issue here.

---

## Issue Name

### Summary

### Steps to Reproduce

### Current Behaviour

### Expected Behaviour

### Extra Details

Here you should include details about the system (if it is unique) and possible information about a fix (feel free to link to code where relevant). Screenshots/GIFs are also fine here.
25 changes: 25 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
## Description

Short description of the pull request

## Motivation

Background on use case, changes needed

## Fixes:

* Items added

## Changes:

* changes made

## Tests included/Docs Updated?

- [ ] Included for each change/fix?
- [ ] Passing? (Merge will not be approved unless this is checked)
- [ ] Docs updated?
- [ ] New packages used/requires npm install?
- [ ] Toggle added for new features?
- [ ] Requires update of SciCat backend API?

52 changes: 52 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"
- package-ecosystem: npm
directory: "/"
schedule:
interval: "weekly"
open-pull-requests-limit: 10
# Increase the version requirements
# only when required
versioning-strategy: increase-if-necessary
groups:
angular:
patterns:
- "@angular*"
update-types:
- "minor"
- "patch"
eslint:
patterns:
- "*eslint*"
update-types:
- "minor"
- "patch"
ngrx:
patterns:
- "@ngrx/*"
update-types:
- "minor"
- "patch"
types:
patterns:
- "types/*"
update-types:
- "minor"
- "patch"
ignore:
- dependency-name: "@angular*"
update-types: ["version-update:semver-major"]
- dependency-name: "@ngrx*"
update-types: ["version-update:semver-major"]
labels:
- "dependencies"
- "npm"
19 changes: 19 additions & 0 deletions .github/workflows/dependabot-auto-merge.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: Dependabot auto-merge
on: pull_request_target
permissions:
pull-requests: write
contents: write
jobs:
dependabot:
runs-on: ubuntu-latest
if: github.event.pull_request.user.login == 'dependabot[bot]'
steps:
- name: Dependabot metadata
id: dependabot-metadata
uses: dependabot/fetch-metadata@v1
- name: Enable auto-merge for Dependabot PRs
if: steps.dependabot-metadata.outputs.update-type == 'version-update:semver-patch'
run: gh pr merge --auto --merge "$PR_URL"
env:
PR_URL: ${{github.event.pull_request.html_url}}
GH_TOKEN: ${{secrets.GITHUB_TOKEN}}
51 changes: 51 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Deploy

on:
push:
branches:
- main
env:
NODE_VERSION: 18.x

jobs:
deploy:
name: Build and deploy
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3

- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Create image tags
id: meta
uses: docker/metadata-action@v5
with:
images: ghcr.io/junjiequan/github-action-test
flavor: latest=true # adds :latest tag to outputs.tags
tags: type=sha,format=long,prefix= # adds :<sha> tag to outputs.tags

- name: Cache node_modules
id: cache-node-modules
uses: actions/cache@v3
with:
path: node_modules
key: node-modules-${{ hashFiles('package-lock.json') }}-${{ env.NODE_VERSION }}

- name: Install dependencies
if: steps.cache-node-modules.outputs.cache-hit != 'true'
run: npm ci

- name: Build and push
uses: docker/build-push-action@v5
with:
push: true
tags: ${{ steps.meta.outputs.tags }}
73 changes: 73 additions & 0 deletions .github/workflows/github-tag-and-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# name: Bump version
# on:
# push:
# branches:
# - master

# env:
# NODE_VERSION: 18.x

# jobs:
# build:
# runs-on: ubuntu-latest

# steps:
# - uses: actions/checkout@v4

# - name: Bump version and push tag
# id: tag_version
# uses: mathieudutour/[email protected]
# with:
# github_token: ${{ secrets.GITHUB_TOKEN }}

# - name: Create a GitHub release
# uses: ncipollo/release-action@v1
# with:
# tag: ${{ steps.tag_version.outputs.new_tag }}
# name: Release ${{ steps.tag_version.outputs.new_tag }}
# body: ${{ steps.tag_version.outputs.changelog }}

# - name: Set up QEMU
# uses: docker/setup-qemu-action@v3

# - name: Set up Docker Buildx
# uses: docker/setup-buildx-action@v3

# - name: Login to GitHub Container Registry
# uses: docker/login-action@v3
# with:
# registry: ghcr.io
# username: ${{ github.actor }}
# password: ${{ secrets.GITHUB_TOKEN }}

# # - name: Build and push backend
# # uses: docker/build-push-action@v5
# # with:
# # context: ./apps/backend
# # platforms: linux/amd64,linux/arm64/v8
# # file: ./apps/backend/Dockerfile
# # push: true
# # tags: ghcr.io/userofficeproject/user-office-backend:${{ steps.tag_version.outputs.new_tag }}

# - name: Set up Node.js
# uses: actions/setup-node@v4
# with:
# node-version: ${{ env.NODE_VERSION }}

# - name: Install Node.js dependencies
# run: npm ci

# - name: Set environment variables
# run: cp apps/frontend/example.development.env apps/frontend/.env

# - name: Generate SDK
# run: npm run generate:sdk

# - name: Build and push frontend
# uses: docker/build-push-action@v5
# with:
# context: ./apps/frontend
# platforms: linux/amd64,linux/arm64/v8
# file: ./apps/frontend/Dockerfile
# push: true
# tags: ghcr.io/userofficeproject/user-office-frontend:${{ steps.tag_version.outputs.new_tag }}
Loading

0 comments on commit 18d763b

Please sign in to comment.