Skip to content
This repository was archived by the owner on Feb 12, 2022. It is now read-only.

Commit 8985bc3

Browse files
author
Christopher McCulloh
authored
Merge pull request #1873 from cormacmccarthy/master
updating travis-ci scripts and node requirements
2 parents 014557c + a6b27e1 commit 8985bc3

File tree

7 files changed

+37
-47
lines changed

7 files changed

+37
-47
lines changed

.travis.yml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,8 @@ language: node_js
22
node_js:
33
- 5.8
44
sudo: false
5-
before_install:
6-
- time wget http://fuelux-edge.herokuapp.com/dev/node_modules.tar.gz
7-
- time tar -zxf node_modules.tar.gz
8-
- chmod +x ./node_modules
95
install:
10-
- time npm update
6+
- time npm install
117
- time ./node_modules/bower/bin/bower update
128
env:
139
global:
@@ -20,4 +16,4 @@ env:
2016
sHZL3GDo5ujm/pPvrKv41BGi81rPPLMnQyGdmTDRgW5/F5BaKbKoOvK8opuP
2117
+M1cvJ2Cq14pEK6y2OMAooY2TY4p8MynxsqoKUGOYjmKXsLp1ZE=
2218
matrix:
23-
fast_finish: true
19+
fast_finish: true

Gruntfile.js

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ module.exports = function (grunt) {
55

66
/*
77
* Welcome to our GruntFile.js!
8-
* Configuration tasks (initConfig) are external JS modules that can be found in
9-
* `./grunt/config`. Additional custom tasks can be found in `./grunt/task`.
10-
* The "shared variables" belowcannot use grunt.config(),
8+
* Configuration tasks (initConfig) are external JS modules that can be found in
9+
* `./grunt/config`. Additional custom tasks can be found in `./grunt/task`.
10+
* The "shared variables" belowcannot use grunt.config(),
1111
* since it has not been initialized yet, until grunt.initConfig() is executed.
1212
*/
1313

@@ -37,7 +37,7 @@ module.exports = function (grunt) {
3737
scope: 'devDependencies'
3838
},
3939
data: {
40-
// Variables shared across configuration tasks, use templates, <%= %>, to access
40+
// Variables shared across configuration tasks, use templates, <%= %>, to access
4141
// within configuration tasks
4242
bannerRelease: '/*!\n' +
4343
' * Fuel UX v<%= pkg.version %> \n' +
@@ -54,11 +54,8 @@ module.exports = function (grunt) {
5454
bootstrapCheck: 'if (typeof jQuery.fn.dropdown === \'undefined\' || typeof jQuery.fn.collapse === \'undefined\') ' +
5555
'{ throw new Error(\'Fuel UX\\\'s JavaScript requires Bootstrap\') }\n\n',
5656
pkg: getPackage(),
57-
// Try ENV variables (export SAUCE_ACCESS_KEY=XXXX), if key doesn't exist, try key file
58-
sauceLoginFile: grunt.file.exists('SAUCE_API_KEY.yml') ? grunt.file.readYAML('SAUCE_API_KEY.yml') : undefined,
5957
cdnLoginFile: grunt.file.exists('FUEL_CDN.yml') ? grunt.file.readYAML('FUEL_CDN.yml') : undefined,
6058
sauceUser: process.env.SAUCE_USERNAME || 'fuelux',
61-
sauceKey: process.env.SAUCE_ACCESS_KEY ? process.env.SAUCE_ACCESS_KEY : '<%= sauceLoginFile.key %>',
6259
// TEST URLS
6360
allTestUrls: ['2.1.0', '1.11.0', '1.9.1', 'browserGlobals', 'noMoment', 'codeCoverage' ].map(function (type) {
6461
if (type === 'browserGlobals') {
@@ -84,5 +81,5 @@ module.exports = function (grunt) {
8481

8582
// load custom build, release, serve, and test tasks from the folder specified
8683
grunt.loadTasks('./grunt/tasks');
87-
84+
8885
};

RELEASE.md

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ You will need to authorize your machine to do npm publishing using `npm adduser`
2121
- [ ] `npm install`
2222
- [ ] `grunt test`
2323
- [ ] `grunt saucelabs` Best to find out if they pass or not now as opposed to in the middle of a release.
24+
* **WILL NOT WORK ON VPN**
2425
* If some environments fail, you can comment out the passing environments temporarily in `sauce_browsers.yml` while you debug
2526
* If some environments fail, start your server with `grunt servefast` and use Browserstack to investigate.
2627
- [ ] Generate test distribution package for use on the Fuel UX Site
@@ -41,7 +42,9 @@ You will need to authorize your machine to do npm publishing using `npm adduser`
4142
- [ ] 1b. Assign any remaining open tickets to the milestone you just created (or, if appropriate, assign them to the backlog).
4243
- [ ] 1c. Mark the current release milestone as closed.
4344

44-
- [ ] 2. `grunt release`
45+
- [ ] 2. Log off of VPN (or saucelabs will probably fail)
46+
47+
- [ ] 3. `grunt release`
4548
This grunt task:
4649
* Creates a new release branch from remote master.
4750
* Builds dist.
@@ -55,21 +58,21 @@ You will need to authorize your machine to do npm publishing using `npm adduser`
5558
* Pushes 3.x to master if nothing new has been merged in.
5659
* Runs `npm publish` using the fuelux profile
5760
* (with prompt) Runs Ruby Gem described below for Release Notes.
58-
- [ ] 3. Create Release Notes for release and publish
61+
- [ ] 4. Create Release Notes for release and publish
5962
![Draft release, copy/paste output from Ruby Gem, Publish](http://i.imgur.com/WQHN3Y6.gif)
60-
- [ ] 4. Update getfuelux.com
63+
- [ ] 5. Update getfuelux.com
6164
- [ ] 4a. Checkout the `gh-pages` branch.
6265
- [ ] 4b. Run `bower update`.
6366
- [ ] 4c. Commit
6467
- [ ] 4d. Push to `upstream`.
6568

66-
- [ ] 5. Update Fuel UX Site
67-
- [ ] 6. [Update MC Theme] (https://github.com/ExactTarget/fuelux-mctheme/wiki/How-to-release-a-new-version)
68-
- [ ] 7. Update Rucksack
69-
- [ ] 8. Update Fusion
70-
- [ ] 9. Announce
71-
- [ ] 9a. Tweet via @FuelUX account
72-
- [ ] 9b. Post to Chatter in the Fuel UX Group
69+
- [ ] 6. Update Fuel UX Site
70+
- [ ] 7. [Update MC Theme] (https://github.com/ExactTarget/fuelux-mctheme/wiki/How-to-release-a-new-version)
71+
- [ ] 8. Update Rucksack
72+
- [ ] 9. Update Fusion
73+
- [ ] 10. Announce
74+
- [ ] 10a. Tweet via @FuelUX account
75+
- [ ] 10b. Post to Chatter in the Fuel UX Group
7376

7477
## Generate Release Notes
7578

grunt/config/saucelabs-qunit.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,12 @@ module.exports = function (grunt) {
33
return grunt.file.readJSON('./package.json');
44
}
55

6+
// Try ENV variables (export SAUCE_ACCESS_KEY=XXXX), if key doesn't exist, try key file
7+
var sauceKey = process.env.SAUCE_ACCESS_KEY ? process.env.SAUCE_ACCESS_KEY : grunt.file.exists('SAUCE_API_KEY.yml') ? grunt.file.readYAML('SAUCE_API_KEY.yml').key : undefined;
8+
69
// https://github.com/axemclion/grunt-saucelabs/issues/215
710
var getSaucekey = function getSaucekey () {
8-
return grunt.file.readYAML('SAUCE_API_KEY.yml').key;
11+
return sauceKey;
912
};
1013

1114
return {

grunt/tasks/test.js

Lines changed: 9 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,32 @@
1-
module.exports = function(grunt) {
2-
3-
/* -------------
4-
TESTS
5-
------------- */
6-
1+
module.exports = function test (grunt) {
72
// to be run prior to submitting a PR
83
grunt.registerTask('test', 'run jshint, qunit source w/ coverage, and validate HTML',
94
['jshint', 'connect:testServer', 'blanket_qunit:source', 'qunit:noMoment', 'qunit:globals', 'htmllint']);
105

11-
//If qunit:source is working but qunit:full is breaking, check to see if the dist broke the code. This would be especially useful if we start mangling our code, but, is 99.99% unlikely right now
6+
// If qunit:source is working but qunit:full is breaking, check to see if the dist broke the code. This would be especially useful if we start mangling our code, but, is 99.99% unlikely right now
127
grunt.registerTask('validate-dist', 'run qunit:source, dist, and then qunit:full',
138
['connect:testServer', 'qunit:source', 'dist', 'browserify:commonjs', 'qunit:dist']);
149

1510
// multiple jQuery versions, then run SauceLabs VMs
1611
grunt.registerTask('releasetest', 'run jshint, build dist, all source tests, validation, and qunit on SauceLabs',
1712
['test', 'dist', 'browserify:commonjs', 'qunit:dist', 'saucelabs-qunit:defaultBrowsers']);
1813

19-
// can be run locally instead of through TravisCI, but requires the Fuel UX Saucelabs API key file which is not public at this time.
14+
// Due to TravisCI security concerns, Saucelabs can not be run for PRs from forks. Therefore, it can not become part of our PR process.
15+
// https://docs.travis-ci.com/user/pull-requests/#Pull-Requests-and-Security-Restrictions
16+
// can be run locally instead. Requires the Fuel UX Saucelabs API key file.
2017
grunt.registerTask('saucelabs', 'run jshint, and qunit on saucelabs',
2118
['connect:testServer', 'jshint', 'saucelabs-qunit:defaultBrowsers']);
2219

23-
// Travis CI task. This task no longer uses SauceLabs. Please run 'grunt saucelabs' manually.
2420
grunt.registerTask('travisci', 'Tests to run when in Travis CI environment',
2521
['test', 'dist', 'browserify:commonjs', 'qunit:dist']);
2622

2723
// if you've already accidentally added your files for commit, this will at least unstage them. If you haven't, this will wipe them out.
28-
grunt.registerTask('resetdist', 'resets changes to dist to keep them from being checked in', function () {
29-
//default resetdist to true... basically.
30-
if (typeof grunt.option('resetdist') === "undefined" || grunt.option('resetdist')) {
24+
grunt.registerTask('resetdist', 'resets changes to dist to keep them from being checked in', function resetdist () {
25+
// default resetdist to true... basically.
26+
if (typeof grunt.option('resetdist') === 'undefined' || grunt.option('resetdist')) {
3127
var exec = require('child_process').exec;
3228
exec('git reset HEAD dist/*');
3329
exec('git checkout -- dist/*');
3430
}
3531
});
36-
37-
};
32+
};

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050
"serve-static": "1.11.1"
5151
},
5252
"engines": {
53-
"node": "4.4.x"
53+
"node": "5.8.x"
5454
},
5555
"homepage": "https://github.com/ExactTarget/fuelux",
5656
"keywords": [

sauce_browsers.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -3,17 +3,13 @@
33

44
# If you are having trouble with a particular test, you can comment the others out to test just it
55

6-
{
7-
browserName: "safari",
8-
platform: "OS X 10.9"
9-
},
106
{
117
browserName: "chrome",
12-
platform: "OS X 10.9"
8+
platform: "OS X 10.11"
139
},
1410
{
1511
browserName: "firefox",
16-
platform: "OS X 10.9"
12+
platform: "OS X 10.11"
1713
},
1814

1915
# Mac Opera not currently supported by Sauce Labs
@@ -49,7 +45,7 @@
4945

5046
{
5147
browserName: "iphone",
52-
platform: "OS X 10.9",
48+
platform: "OS X 10.11",
5349
version: "7.1"
5450
},
5551

0 commit comments

Comments
 (0)