diff --git a/.dockerignore b/.dockerignore index a839c69..29f27b6 100644 --- a/.dockerignore +++ b/.dockerignore @@ -7,3 +7,4 @@ fixtures/ coverage/ coverage.xml images/ +node_modules/ diff --git a/.editorconfig b/.editorconfig index d162066..2954e68 100644 --- a/.editorconfig +++ b/.editorconfig @@ -7,7 +7,7 @@ trim_trailing_whitespace = true indent_style = space indent_size = 4 -[*.json,*.yml] +[*.{json,yml}] indent_size = 2 [composer.json] diff --git a/.gitignore b/.gitignore index f6b089b..6476dbe 100644 --- a/.gitignore +++ b/.gitignore @@ -4,4 +4,5 @@ vendor/ .phpls/ composer.lock stubs -*.ast \ No newline at end of file +*.ast +node_modules/ diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..43c97e7 --- /dev/null +++ b/.npmrc @@ -0,0 +1 @@ +package-lock=false diff --git a/.travis.yml b/.travis.yml index 05ebb2a..02e1797 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,6 +11,7 @@ services: cache: directories: - $HOME/.composer/cache + - $HOME/.npm install: - composer install --prefer-dist --no-interaction @@ -22,9 +23,12 @@ script: after_success: - bash <(curl -s https://codecov.io/bash) - - | - if [[ $TRAVIS_TAG == v* ]]; then - docker build -t felixfbecker/php-language-server:${TRAVIS_TAG:1} . - docker login -e="$DOCKER_EMAIL" -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD" - docker push felixfbecker/php-language-server:${TRAVIS_TAG:1} - fi + - git config --replace-all remote.origin.fetch +refs/heads/*:refs/remotes/origin/* + - git fetch --tags + - nvm install 8 && nvm use 8 + - npm install + - npm run semantic-release + +branches: + except: + - /^v\d+\.\d+\.\d+$/ diff --git a/README.md b/README.md index 3745ff6..0aad4e5 100644 --- a/README.md +++ b/README.md @@ -4,6 +4,7 @@ [![Build Status](https://travis-ci.org/felixfbecker/php-language-server.svg?branch=master)](https://travis-ci.org/felixfbecker/php-language-server) [![Coverage](https://codecov.io/gh/felixfbecker/php-language-server/branch/master/graph/badge.svg)](https://codecov.io/gh/felixfbecker/php-language-server) [![Dependency Status](https://gemnasium.com/badges/github.com/felixfbecker/php-language-server.svg)](https://gemnasium.com/github.com/felixfbecker/php-language-server) +[![semantic-release](https://img.shields.io/badge/%20%20%F0%9F%93%A6%F0%9F%9A%80-semantic--release-e10079.svg)](https://github.com/semantic-release/semantic-release) [![Minimum PHP Version](https://img.shields.io/badge/php-%3E%3D%207.0-8892BF.svg)](https://php.net/) [![License](https://img.shields.io/packagist/l/felixfbecker/language-server.svg)](https://github.com/felixfbecker/php-language-server/blob/master/LICENSE.txt) [![Gitter](https://badges.gitter.im/felixfbecker/php-language-server.svg)](https://gitter.im/felixfbecker/php-language-server?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge) diff --git a/dependencies.yml b/dependencies.yml index 6f8dfc7..320ae87 100644 --- a/dependencies.yml +++ b/dependencies.yml @@ -3,11 +3,8 @@ collectors: - type: php-composer path: / actors: - # pull requests for updates to our major version + # pull requests for new major versions - type: php-composer - versions: "L.Y.Y" - # create issues for new major versions - - type: repo-issue versions: "Y.0.0" settings: commit_message_prefix: "chore: " diff --git a/package.json b/package.json new file mode 100644 index 0000000..d67062f --- /dev/null +++ b/package.json @@ -0,0 +1,28 @@ +{ + "name": "php-language-server", + "version": "0.0.0-development", + "private": true, + "scripts": { + "commitmsg": "validate-commit-msg", + "semantic-release": "semantic-release pre && ./release-docker.sh && semantic-release post" + }, + "devDependencies": { + "cz-conventional-changelog": "^2.0.0", + "husky": "^0.14.3", + "last-release-git": "0.0.3", + "semantic-release": "^8.2.0", + "validate-commit-msg": "^2.14.0" + }, + "config": { + "commitizen": { + "path": "./node_modules/cz-conventional-changelog" + } + }, + "release": { + "getLastRelease": "last-release-git" + }, + "repository": { + "type": "git", + "url": "https://github.com/felixfbecker/php-language-server.git" + } +} diff --git a/release-docker.sh b/release-docker.sh new file mode 100644 index 0000000..35e89d9 --- /dev/null +++ b/release-docker.sh @@ -0,0 +1,6 @@ +#!/bin/bash +set -e + +docker build -t felixfbecker/php-language-server:${TRAVIS_TAG:1} . +docker login -e="$DOCKER_EMAIL" -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD" +docker push felixfbecker/php-language-server:${TRAVIS_TAG:1}