mirror of https://github.com/rusefi/msqur.git
Update CI & Deployment scripts (#22)
* ci test * update hgignore. ci test. * Update README.md * add codeclimate stuff * update codeclimate. * ditto * deploy script
This commit is contained in:
parent
49ac6a2d74
commit
fe2b03776e
|
@ -0,0 +1,33 @@
|
|||
---
|
||||
engines:
|
||||
csslint:
|
||||
enabled: true
|
||||
duplication:
|
||||
enabled: true
|
||||
config:
|
||||
languages:
|
||||
- ruby
|
||||
- javascript
|
||||
- python
|
||||
- php
|
||||
eslint:
|
||||
enabled: true
|
||||
fixme:
|
||||
enabled: true
|
||||
phpmd:
|
||||
enabled: true
|
||||
ratings:
|
||||
paths:
|
||||
- "**.css"
|
||||
- "**.inc"
|
||||
- "**.js"
|
||||
- "**.jsx"
|
||||
- "**.module"
|
||||
- "**.php"
|
||||
- "**.py"
|
||||
- "**.rb"
|
||||
exclude_paths:
|
||||
- db/
|
||||
- tests/
|
||||
- src/view/lib/
|
||||
- doxygen/
|
|
@ -0,0 +1,2 @@
|
|||
--exclude-exts=.min.css
|
||||
--ignore=adjoining-classes,box-model,ids,order-alphabetical,unqualified-attributes
|
|
@ -0,0 +1 @@
|
|||
**/*{.,-}min.js
|
|
@ -0,0 +1,213 @@
|
|||
ecmaFeatures:
|
||||
modules: true
|
||||
jsx: true
|
||||
|
||||
env:
|
||||
amd: true
|
||||
browser: true
|
||||
es6: true
|
||||
jquery: true
|
||||
node: true
|
||||
|
||||
# http://eslint.org/docs/rules/
|
||||
rules:
|
||||
# Possible Errors
|
||||
comma-dangle: [2, never]
|
||||
no-cond-assign: 2
|
||||
no-console: 0
|
||||
no-constant-condition: 2
|
||||
no-control-regex: 2
|
||||
no-debugger: 2
|
||||
no-dupe-args: 2
|
||||
no-dupe-keys: 2
|
||||
no-duplicate-case: 2
|
||||
no-empty: 2
|
||||
no-empty-character-class: 2
|
||||
no-ex-assign: 2
|
||||
no-extra-boolean-cast: 2
|
||||
no-extra-parens: 0
|
||||
no-extra-semi: 2
|
||||
no-func-assign: 2
|
||||
no-inner-declarations: [2, functions]
|
||||
no-invalid-regexp: 2
|
||||
no-irregular-whitespace: 2
|
||||
no-negated-in-lhs: 2
|
||||
no-obj-calls: 2
|
||||
no-regex-spaces: 2
|
||||
no-sparse-arrays: 2
|
||||
no-unexpected-multiline: 2
|
||||
no-unreachable: 2
|
||||
use-isnan: 2
|
||||
valid-jsdoc: 0
|
||||
valid-typeof: 2
|
||||
|
||||
# Best Practices
|
||||
accessor-pairs: 2
|
||||
block-scoped-var: 0
|
||||
complexity: [2, 6]
|
||||
consistent-return: 0
|
||||
curly: 0
|
||||
default-case: 0
|
||||
dot-location: 0
|
||||
dot-notation: 0
|
||||
eqeqeq: 2
|
||||
guard-for-in: 2
|
||||
no-alert: 2
|
||||
no-caller: 2
|
||||
no-case-declarations: 2
|
||||
no-div-regex: 2
|
||||
no-else-return: 0
|
||||
no-empty-label: 2
|
||||
no-empty-pattern: 2
|
||||
no-eq-null: 2
|
||||
no-eval: 2
|
||||
no-extend-native: 2
|
||||
no-extra-bind: 2
|
||||
no-fallthrough: 2
|
||||
no-floating-decimal: 0
|
||||
no-implicit-coercion: 0
|
||||
no-implied-eval: 2
|
||||
no-invalid-this: 0
|
||||
no-iterator: 2
|
||||
no-labels: 0
|
||||
no-lone-blocks: 2
|
||||
no-loop-func: 2
|
||||
no-magic-number: 0
|
||||
no-multi-spaces: 0
|
||||
no-multi-str: 0
|
||||
no-native-reassign: 2
|
||||
no-new-func: 2
|
||||
no-new-wrappers: 2
|
||||
no-new: 2
|
||||
no-octal-escape: 2
|
||||
no-octal: 2
|
||||
no-proto: 2
|
||||
no-redeclare: 2
|
||||
no-return-assign: 2
|
||||
no-script-url: 2
|
||||
no-self-compare: 2
|
||||
no-sequences: 0
|
||||
no-throw-literal: 0
|
||||
no-unused-expressions: 2
|
||||
no-useless-call: 2
|
||||
no-useless-concat: 2
|
||||
no-void: 2
|
||||
no-warning-comments: 0
|
||||
no-with: 2
|
||||
radix: 2
|
||||
vars-on-top: 0
|
||||
wrap-iife: 2
|
||||
yoda: 0
|
||||
|
||||
# Strict
|
||||
strict: 0
|
||||
|
||||
# Variables
|
||||
init-declarations: 0
|
||||
no-catch-shadow: 2
|
||||
no-delete-var: 2
|
||||
no-label-var: 2
|
||||
no-shadow-restricted-names: 2
|
||||
no-shadow: 0
|
||||
no-undef-init: 2
|
||||
no-undef: 0
|
||||
no-undefined: 0
|
||||
no-unused-vars: 0
|
||||
no-use-before-define: 0
|
||||
|
||||
# Node.js and CommonJS
|
||||
callback-return: 2
|
||||
global-require: 2
|
||||
handle-callback-err: 2
|
||||
no-mixed-requires: 0
|
||||
no-new-require: 0
|
||||
no-path-concat: 2
|
||||
no-process-exit: 2
|
||||
no-restricted-modules: 0
|
||||
no-sync: 0
|
||||
|
||||
# Stylistic Issues
|
||||
array-bracket-spacing: 0
|
||||
block-spacing: 0
|
||||
brace-style: 0
|
||||
camelcase: 0
|
||||
comma-spacing: 0
|
||||
comma-style: 0
|
||||
computed-property-spacing: 0
|
||||
consistent-this: 0
|
||||
eol-last: 0
|
||||
func-names: 0
|
||||
func-style: 0
|
||||
id-length: 0
|
||||
id-match: 0
|
||||
indent: 0
|
||||
jsx-quotes: 0
|
||||
key-spacing: 0
|
||||
linebreak-style: 0
|
||||
lines-around-comment: 0
|
||||
max-depth: 0
|
||||
max-len: 0
|
||||
max-nested-callbacks: 0
|
||||
max-params: 0
|
||||
max-statements: [2, 30]
|
||||
new-cap: 0
|
||||
new-parens: 0
|
||||
newline-after-var: 0
|
||||
no-array-constructor: 0
|
||||
no-bitwise: 0
|
||||
no-continue: 0
|
||||
no-inline-comments: 0
|
||||
no-lonely-if: 0
|
||||
no-mixed-spaces-and-tabs: 0
|
||||
no-multiple-empty-lines: 0
|
||||
no-negated-condition: 0
|
||||
no-nested-ternary: 0
|
||||
no-new-object: 0
|
||||
no-plusplus: 0
|
||||
no-restricted-syntax: 0
|
||||
no-spaced-func: 0
|
||||
no-ternary: 0
|
||||
no-trailing-spaces: 0
|
||||
no-underscore-dangle: 0
|
||||
no-unneeded-ternary: 0
|
||||
object-curly-spacing: 0
|
||||
one-var: 0
|
||||
operator-assignment: 0
|
||||
operator-linebreak: 0
|
||||
padded-blocks: 0
|
||||
quote-props: 0
|
||||
quotes: 0
|
||||
require-jsdoc: 0
|
||||
semi-spacing: 0
|
||||
semi: 0
|
||||
sort-vars: 0
|
||||
space-after-keywords: 0
|
||||
space-before-blocks: 0
|
||||
space-before-function-paren: 0
|
||||
space-before-keywords: 0
|
||||
space-in-parens: 0
|
||||
space-infix-ops: 0
|
||||
space-return-throw-case: 0
|
||||
space-unary-ops: 0
|
||||
spaced-comment: 0
|
||||
wrap-regex: 0
|
||||
|
||||
# ECMAScript 6
|
||||
arrow-body-style: 0
|
||||
arrow-parens: 0
|
||||
arrow-spacing: 0
|
||||
constructor-super: 0
|
||||
generator-star-spacing: 0
|
||||
no-arrow-condition: 0
|
||||
no-class-assign: 0
|
||||
no-const-assign: 0
|
||||
no-dupe-class-members: 0
|
||||
no-this-before-super: 0
|
||||
no-var: 0
|
||||
object-shorthand: 0
|
||||
prefer-arrow-callback: 0
|
||||
prefer-const: 0
|
||||
prefer-reflect: 0
|
||||
prefer-spread: 0
|
||||
prefer-template: 0
|
||||
require-yield: 0
|
|
@ -3,3 +3,4 @@ script.config
|
|||
src/config.php
|
||||
VERSION
|
||||
doxygen/*
|
||||
|
||||
|
|
26
.travis.yml
26
.travis.yml
|
@ -1,23 +1,25 @@
|
|||
env:
|
||||
secure: EIJjaXkacpB8gLRsJSUMlLLZcbNqwgjyItjPqeQ4UXgLyph+yU3R1YyJkFhq8WAjOWB7DqESclp/nOfXRV+3kMOAIIRc+uAg8m3znhSOSSJYzRjh6UL+WrX7BjxgnblxC7or5IFWJR+OBOOrScwmHvKCfd4Z14WZBRj/kMNPjlSNb881lFo30Z6bkhfMQZlMMw0ctpaPUbjuj9p7MTBw7qqbIX76HIVznkxlnV98R+78PSdma+10Yx2Rp+ft+JNecR1I5taQ3hCPPRz7ZS620rCBu6IdLhoKNyqYGWMr31xzp40TqvSDvTAOQLPKYe1p/IDHFUJ2GnTb/MNP56uWRzi2+qfS/d9aYaa64jM0Vv2ZEb0ISvNzqyNlKYGBxTeDjwf+HxH4CSesKw5IZj8pskcsrAa8EtHNECGGYS6T/UYco/O56LQWg6ihya8JP9/ID1U0qGa0LGmM0MFlTj8qPhLOLihZZsZqaKx6HhhhxHKjTEGzzLxCIy0FFpJzQzJlH1nHqr9fLtI5uUh2e6PWqNNzDguV91nQRGB+7sTdfFh8qLNmta5yfpTZCFiJe8V0mzBUe4jvTjSLDfDZTzF3647TXTVUj1BRGH44vAZLE/AWXYqBQsiYDvv/1RBkD3FnckOLDaiyGqIsuDC/24WyfiQJWe5ZxVRNLNL2uPiN4JY=
|
||||
|
||||
language: php
|
||||
|
||||
php:
|
||||
- '7.2'
|
||||
- nightly
|
||||
|
||||
stages:
|
||||
- test
|
||||
- name: deploy
|
||||
if: branch = msqur.com
|
||||
|
||||
branches:
|
||||
only:
|
||||
- master
|
||||
- msqur.com
|
||||
|
||||
script: phpunit tests
|
||||
|
||||
deploy:
|
||||
provider: script
|
||||
script: deploy.sh
|
||||
on:
|
||||
branch: msqur.com
|
||||
jobs:
|
||||
include:
|
||||
- stage: test
|
||||
script: phpunit tests
|
||||
- stage: deploy
|
||||
script: bash deploy.sh
|
||||
|
||||
before_install:
|
||||
- openssl aes-256-cbc -K $encrypted_63cff28d8c75_key -iv $encrypted_63cff28d8c75_iv -in .travis/deploy_key.pem.enc -out .travis/deploy_key.pem -d
|
||||
- mkdir -p ~\/.ssh
|
||||
- openssl aes-256-cbc -K $encrypted_571de2096706_key -iv $encrypted_571de2096706_iv -in .travis/travis_ci.enc -out .travis/id_rsa -d
|
||||
|
|
Binary file not shown.
Binary file not shown.
17
README.md
17
README.md
|
@ -11,13 +11,6 @@ Try it now at: http://msqur.com/
|
|||
* msqur.com [![Build Status](https://travis-ci.org/nearwood/msqur.svg?branch=msqur.com)](https://travis-ci.org/nearwood/msqur)
|
||||
* master [![Build Status](https://travis-ci.org/nearwood/msqur.svg?branch=master)](https://travis-ci.org/nearwood/msqur)
|
||||
|
||||
### TODO ###
|
||||
|
||||
* Uploader (user)/Manager (admin)
|
||||
* 3D table charts
|
||||
* Tests and test lib.
|
||||
* Better DB update procedure.
|
||||
|
||||
### Installation ###
|
||||
|
||||
#### Needed software ####
|
||||
|
@ -41,16 +34,6 @@ Try it now at: http://msqur.com/
|
|||
1. Run deploy script
|
||||
1. Hit webserver to start using it.
|
||||
|
||||
#### hgrc ####
|
||||
To display a fancy version string, modify your .hgrc to have this hook:
|
||||
|
||||
```
|
||||
#!bash
|
||||
|
||||
[hooks]
|
||||
post-update = hg log -r . --template "v{latesttag}-{latesttagdistance}-{node|short}\n" > src/VERSION
|
||||
```
|
||||
|
||||
### Update & Deployment Instructions ###
|
||||
|
||||
* Pull updates on host.
|
||||
|
|
|
@ -1,12 +1,12 @@
|
|||
#. script.config
|
||||
|
||||
eval "$(ssh-agent -s)"
|
||||
chmod 600 .travis/deploy_key.pem
|
||||
ssh-add .travis/deploy_key.pem
|
||||
chmod 600 .travis/id_rsa
|
||||
ssh-add .travis/id_rsa
|
||||
|
||||
#TODO Run backup script on remote
|
||||
|
||||
rsync -av --delete --exclude='*/.git*:.svn*:*/config.php' src/ $DEPLOY_DIR/
|
||||
rsync -av --delete --exclude-from 'deploy_excludes.txt' -e "ssh -o StrictHostKeyChecking=no" src/ $DEPLOY_HOST/
|
||||
|
||||
rm .travis/deploy_key.pem
|
||||
rm .travis/id_rsa
|
||||
#cp -v VERSION $DEPLOY_DIR/ > /dev/null 2>&1
|
||||
|
|
|
@ -0,0 +1,3 @@
|
|||
.well-known
|
||||
.git
|
||||
config.php
|
Loading…
Reference in New Issue