Remove bower and add yarn support

bower is deprecated and intended to be replaced. yarn is the recommended
replacement for both things installed via npm and things installed via
bower.

Move the bower resources into package.json and add the yarn.lock file.
Zuul has support for installing yarn if a yarn.lock file is found and
using it to install things.

Change-Id: I848f22dce6196b2df9de4b9f585e857e03cdb0d7
This commit is contained in:
Monty Taylor 2017-12-15 16:26:49 -06:00
parent aff3f59926
commit f442646269
No known key found for this signature in database
GPG Key ID: 7BAE94BC7141A594
12 changed files with 5412 additions and 73 deletions

View File

@ -1,5 +1,4 @@
node_modules node_modules
bower_components
cover cover
reports reports
dist dist

1
.gitignore vendored
View File

@ -1,7 +1,6 @@
.build .build
.local .local
node_modules node_modules
bower_components
dist dist
npm-debug.log npm-debug.log
*.iml *.iml

View File

@ -46,7 +46,7 @@ module.exports = function (grunt) {
test: './test', test: './test',
output: './dist', output: './dist',
report: './reports', report: './reports',
bower: './bower_components' node_modules: './node_modules'
}; };
var proxies = { var proxies = {
@ -151,10 +151,10 @@ module.exports = function (grunt) {
mainPath, mainPath,
dir.theme + '/custom/', dir.theme + '/custom/',
dir.theme + '/storyboard/', dir.theme + '/storyboard/',
dir.bower + '/bootstrap/less/', dir.node_modules + '/bootstrap/less/',
dir.bower + '/font-awesome/less/', dir.node_modules + '/font-awesome/less/',
dir.bower + '/highlightjs/styles/', dir.node_modules + '/highlight.js/styles/',
dir.bower + '/ng-sortable/dist/' dir.node_modules + '/ng-sortable/dist/'
]; ];
}, },
cleancss: true, cleancss: true,
@ -252,7 +252,7 @@ module.exports = function (grunt) {
{ {
expand: true, expand: true,
dot: true, dot: true,
cwd: dir.bower + '/font-awesome', cwd: dir.node_modules + '/font-awesome',
dest: dir.output, dest: dir.output,
src: [ src: [
'fonts/*.*' 'fonts/*.*'

View File

@ -1,7 +1,7 @@
#!/bin/bash -xe #!/bin/bash -xe
# This script bootstraps the current workspace with a locally compiled # This script bootstraps the current workspace with a locally compiled
# node/grunt/bower javascript toolchain. This is done because recent NodeJS # node/grunt javascript toolchain. This is done because recent NodeJS
# releases (v0.10+) are not available for the images we use for builds # releases (v0.10+) are not available for the images we use for builds
# (CentOS, Ubuntu 12.04 precise), and because we only need node to generate our # (CentOS, Ubuntu 12.04 precise), and because we only need node to generate our
# static assets. # static assets.

View File

@ -13,10 +13,6 @@ echo "Installing build dependencies"
npm prune npm prune
npm install npm install
echo "Installing compile dependencies"
bower prune
bower install
echo "Launching Virtual Frame Buffer" echo "Launching Virtual Frame Buffer"
$XVFB :${VDISPLAY} -screen 0 ${DIMENSIONS} -ac +extension GLX +render -noreset 2>&1 > /dev/null & $XVFB :${VDISPLAY} -screen 0 ${DIMENSIONS} -ac +extension GLX +render -noreset 2>&1 > /dev/null &

View File

@ -1,30 +0,0 @@
{
"name": "storyboard-webclient",
"version": "0.0.1",
"dependencies": {
"font-awesome": "4.5.0",
"bootstrap": "3.3.7",
"angular": "1.5.8",
"angular-resource": "1.5.8",
"angular-sanitize": "1.5.8",
"angular-ui-router": "0.2.13",
"angular-bootstrap": "0.12.0",
"angular-local-storage": "0.1.5",
"angular-elastic": "2.4.2",
"angular-moment": "0.9.0",
"angular-cache": "3.2.5",
"angularjs-viewhead": "0.0.1",
"markdown-it": "8.4.0",
"moment-timezone": "0.5.4",
"highlightjs": "9.1.0",
"ng-sortable": "1.3.1"
},
"devDependencies": {
"angular-mocks": "1.5.8",
"angular-scenario": "1.5.8"
},
"resolutions": {
"angular": "1.5.8",
"font-awesome": "4.3.0"
}
}

View File

@ -35,7 +35,7 @@ module.exports = function (config) {
files: [ files: [
'./dist/js/libs.js', './dist/js/libs.js',
'./bower_components/angular-mocks/angular-mocks.js', './node_modules/angular-mocks/angular-mocks.js',
'./dist/js/storyboard.js', './dist/js/storyboard.js',
'./dist/js/templates.js', './dist/js/templates.js',
'./test/unit/custom_matchers.js', './test/unit/custom_matchers.js',

View File

@ -12,8 +12,7 @@
"test-integration": "grunt test:integration", "test-integration": "grunt test:integration",
"draft": "grunt build:draft", "draft": "grunt build:draft",
"build": "grunt build", "build": "grunt build",
"serve": "grunt serve", "serve": "grunt serve"
"postinstall": "bower install"
}, },
"repository": "https://git.openstack.org/openstack-infra/storyboard-webclient", "repository": "https://git.openstack.org/openstack-infra/storyboard-webclient",
"keywords": [ "keywords": [
@ -25,31 +24,29 @@
"author": "OpenStack <openstack-dev@lists.openstack.org>", "author": "OpenStack <openstack-dev@lists.openstack.org>",
"license": "Apache-2.0", "license": "Apache-2.0",
"devDependencies": { "devDependencies": {
"bower": "1.3.12",
"connect-livereload": "0.4.0", "connect-livereload": "0.4.0",
"eslint": "0.15.1", "eslint": "0.15.1",
"gifsicle": "1.0.0", "grunt": "^0.4.5",
"grunt": "0.4.5", "grunt-cli": "^0.1.13",
"grunt-cli": "0.1.13", "grunt-connect-proxy": "^0.2.0",
"grunt-connect-proxy": "0.2.0", "grunt-contrib-clean": "^0.6.0",
"grunt-contrib-clean": "0.6.0", "grunt-contrib-concat": "^0.5.0",
"grunt-contrib-concat": "0.5.0", "grunt-contrib-connect": "^0.8.0",
"grunt-contrib-connect": "0.8.0", "grunt-contrib-copy": "^0.6.0",
"grunt-contrib-copy": "0.6.0", "grunt-contrib-cssmin": "^0.10.0",
"grunt-contrib-cssmin": "0.10.0", "grunt-contrib-htmlmin": "^0.3.0",
"grunt-contrib-htmlmin": "0.3.0", "grunt-contrib-imagemin": "^0.8.1",
"grunt-contrib-imagemin": "0.8.1", "grunt-contrib-less": "^1.4.1",
"grunt-contrib-less": "0.11.4", "grunt-contrib-uglify": "^0.6.0",
"grunt-contrib-uglify": "0.6.0", "grunt-contrib-watch": "^0.6.1",
"grunt-contrib-watch": "0.6.1", "grunt-env": "^0.4.1",
"grunt-env": "0.4.1",
"grunt-gitinfo": "^0.1.7", "grunt-gitinfo": "^0.1.7",
"grunt-html2js": "0.2.9", "grunt-html2js": "^0.2.9",
"grunt-protractor-runner": "1.1.4", "grunt-protractor-runner": "1.1.4",
"grunt-shell": "1.1.1", "grunt-shell": "1.1.1",
"grunt-template": "^0.2.3", "grunt-template": "^0.2.3",
"grunt-usemin": "2.4.0", "grunt-usemin": "2.4.0",
"grunt-webfont": "0.4.8", "grunt-webfont": "^1.6.0",
"jasmine-core": "^2.4.1", "jasmine-core": "^2.4.1",
"karma": "0.13.22", "karma": "0.13.22",
"karma-chrome-launcher": "0.2.3", "karma-chrome-launcher": "0.2.3",
@ -64,5 +61,26 @@
"protractor": "1.3.1", "protractor": "1.3.1",
"requirejs": "2.1.15", "requirejs": "2.1.15",
"selenium-standalone": "2.43.1-2.9.0-1" "selenium-standalone": "2.43.1-2.9.0-1"
},
"dependencies": {
"angular": "1.5.8",
"angular-cache": "https://github.com/jmdobry/angular-cache/archive/3.2.5.tar.gz",
"angular-elastic": "https://github.com/monospaced/angular-elastic/archive/v2.4.2.tar.gz",
"angular-local-storage": "0.1.5",
"angular-mocks": "1.5.8",
"angular-moment": "0.9.0",
"angular-resource": "1.5.8",
"angular-sanitize": "1.5.8",
"angular-scenario": "1.5.8",
"angular-ui-bootstrap": "https://github.com/angular-ui/bootstrap/archive/0.12.0.tar.gz",
"angular-ui-router": "0.2.13",
"angularjs-viewhead": "0.0.1",
"bootstrap": "3.3.7",
"font-awesome": "4.5.0",
"gifsicle": "1.0.0",
"highlight.js": "9.1.0",
"markdown-it": "8.4.0",
"moment-timezone": "0.5.4",
"ng-sortable": "1.3.1"
} }
} }

View File

@ -27,7 +27,7 @@
<!-- Icons --> <!-- Icons -->
<link rel="shortcut icon" href="favicon.ico"> <link rel="shortcut icon" href="favicon.ico">
<!-- build:js(bower_components) js/libs.js --> <!-- build:js(node_modules) js/libs.js -->
<script src="angular/angular.js"></script> <script src="angular/angular.js"></script>
<script src="angular-elastic/elastic.js"></script> <script src="angular-elastic/elastic.js"></script>
<script src="angular-bootstrap/ui-bootstrap-tpls.js"></script> <script src="angular-bootstrap/ui-bootstrap-tpls.js"></script>
@ -41,7 +41,7 @@
<script src="angular-moment/angular-moment.js"></script> <script src="angular-moment/angular-moment.js"></script>
<script src="angularjs-viewhead/angularjs-viewhead.js"></script> <script src="angularjs-viewhead/angularjs-viewhead.js"></script>
<script src="markdown-it/dist/markdown-it.min.js"></script> <script src="markdown-it/dist/markdown-it.min.js"></script>
<script src="highlightjs/highlight.pack.js"></script> <script src="highlight.js/highlight.pack.js"></script>
<script src="ng-sortable/dist/ng-sortable.js"></script> <script src="ng-sortable/dist/ng-sortable.js"></script>
<!-- endbuild --> <!-- endbuild -->

View File

@ -19,8 +19,8 @@ This folder is included in the dependency resolution path for our LESS files, in
* `./src/theme/main.less` * `./src/theme/main.less`
* `./src/theme/custom/` * `./src/theme/custom/`
* `./src/theme/storyboard/` * `./src/theme/storyboard/`
* `./bower_components/bootstrap/less/` * `./node_modules/bootstrap/less/`
* `./bower_components/font-awesome/less/` * `./node_modules/font-awesome/less/`
This means that you can override any file directly imported into main.less by This means that you can override any file directly imported into main.less by
adding your own version of this file. You can also add your own file inclusions adding your own version of this file. You can also add your own file inclusions

View File

@ -7,7 +7,6 @@ whitelist_externals = bash
npm npm
node node
nodejs nodejs
bower
grunt grunt
install_command = pip install -U {opts} {packages} install_command = pip install -U {opts} {packages}
setenv = VIRTUAL_ENV={envdir} setenv = VIRTUAL_ENV={envdir}
@ -19,13 +18,11 @@ deps = nodeenv
commands = commands =
bash ./bin/nodeenv.sh {envdir} 6.10.2 bash ./bin/nodeenv.sh {envdir} 6.10.2
npm install npm install
{toxinidir}/node_modules/.bin/bower install --config.interactive=false
[testenv:grunt] [testenv:grunt]
commands = commands =
bash ./bin/nodeenv.sh {envdir} 6.10.2 bash ./bin/nodeenv.sh {envdir} 6.10.2
npm install npm install
{toxinidir}/node_modules/.bin/bower install --config.interactive=false
bash ./bin/api.sh create-db bash ./bin/api.sh create-db
bash ./bin/api.sh start bash ./bin/api.sh start
{toxinidir}/node_modules/.bin/grunt {posargs} {toxinidir}/node_modules/.bin/grunt {posargs}
@ -36,7 +33,6 @@ deps = nodeenv
commands = commands =
bash ./bin/nodeenv.sh {envdir} 6.10.2 bash ./bin/nodeenv.sh {envdir} 6.10.2
npm install npm install
{toxinidir}/node_modules/.bin/bower install --config.interactive=false
{toxinidir}/node_modules/.bin/grunt {posargs} {toxinidir}/node_modules/.bin/grunt {posargs}
[testenv:bindep] [testenv:bindep]

5361
yarn.lock Normal file

File diff suppressed because it is too large Load Diff