initial approach to frozen assets

pull/14093/head
Román Jiménez 6 years ago
parent 34635da07f
commit 6c8d905a98

@ -4,6 +4,7 @@ var semver = require('semver');
var jasmineCfg = require('./lib/build/tasks/jasmine.js');
var shrinkwrapDependencies = require('./lib/build/tasks/shrinkwrap-dependencies.js');
var webpackTask = null;
var EDITOR_ASSETS_VERSION = require('./config/editor_assets_version.json').version;
var REQUIRED_NODE_VERSION = '6.9.2';
var REQUIRED_NPM_VERSION = '3.10.9';
@ -110,6 +111,7 @@ module.exports = function (grunt) {
var PUBLIC_DIR = './public/';
var ROOT_ASSETS_DIR = './public/assets/';
var ASSETS_DIR = './public/assets/<%= pkg.version %>';
var EDITOR_ASSETS_DIR = `./public/assets/editor/${EDITOR_ASSETS_VERSION}`;
/**
* this is being used by `grunt --environment=production release`
@ -138,6 +140,8 @@ module.exports = function (grunt) {
public_dir: PUBLIC_DIR,
assets_dir: ASSETS_DIR,
editor_assets_dir: EDITOR_ASSETS_DIR,
editor_assets_version: EDITOR_ASSETS_VERSION,
root_assets_dir: ROOT_ASSETS_DIR,
// Concat task
@ -387,6 +391,10 @@ module.exports = function (grunt) {
'invalidate'
]);
grunt.registerTask('release_editor_assets', 'builds & uploads editor assets', [
'build-editor'
]);
grunt.registerTask('generate_builder_specs', 'Generate only builder specs', function (option) {
requireWebpackTask().affected.call(this, option, grunt);
});

@ -0,0 +1,3 @@
{
"version": "elsa"
}

@ -1,129 +1,129 @@
var css_files;
module.exports = css_files = {
cdb: [
'<%= assets_dir %>/stylesheets/map/leaflet.css',
'<%= assets_dir %>/stylesheets/vendor/cartodb.css'
'<%= editor_assets_dir %>/stylesheets/map/leaflet.css',
'<%= editor_assets_dir %>/stylesheets/vendor/cartodb.css'
],
old_common: [
'<%= assets_dir %>/stylesheets/old_common/**/*.css',
'<%= assets_dir %>/stylesheets/old_elements/**/*.css',
'<%= assets_dir %>/stylesheets/plugins/**/*.css',
'!<%= assets_dir %>/stylesheets/old_common/upload.css'
'<%= editor_assets_dir %>/stylesheets/old_common/**/*.css',
'<%= editor_assets_dir %>/stylesheets/old_elements/**/*.css',
'<%= editor_assets_dir %>/stylesheets/plugins/**/*.css',
'!<%= editor_assets_dir %>/stylesheets/old_common/upload.css'
],
old_common_without_core: [
'<%= assets_dir %>/stylesheets/old_common/**/*.css',
'<%= assets_dir %>/stylesheets/old_elements/**/*.css',
'<%= assets_dir %>/stylesheets/plugins/**/*.css',
'<%= editor_assets_dir %>/stylesheets/old_common/**/*.css',
'<%= editor_assets_dir %>/stylesheets/old_elements/**/*.css',
'<%= editor_assets_dir %>/stylesheets/plugins/**/*.css',
// Core is replaced by a retrofitted set of styles, to make the old core styles work with new_common/default
'!<%= assets_dir %>/stylesheets/old_common/core.css',
'!<%= assets_dir %>/stylesheets/old_common/upload.css'
'!<%= editor_assets_dir %>/stylesheets/old_common/core.css',
'!<%= editor_assets_dir %>/stylesheets/old_common/upload.css'
],
common: [
'<%= assets_dir %>/stylesheets/old_common/video_player.css',
'<%= assets_dir %>/stylesheets/common/utilities.css',
'<%= assets_dir %>/stylesheets/common/icon-font-specials.css',
'<%= assets_dir %>/stylesheets/common/**/*.css',
'<%= assets_dir %>/stylesheets/cartoassets/entry.css',
'<%= assets_dir %>/stylesheets/client/**/*.css'
'<%= editor_assets_dir %>/stylesheets/old_common/video_player.css',
'<%= editor_assets_dir %>/stylesheets/common/utilities.css',
'<%= editor_assets_dir %>/stylesheets/common/icon-font-specials.css',
'<%= editor_assets_dir %>/stylesheets/common/**/*.css',
'<%= editor_assets_dir %>/stylesheets/cartoassets/entry.css',
'<%= editor_assets_dir %>/stylesheets/client/**/*.css'
],
password_protected: [
'<%= assets_dir %>/stylesheets/public/password_protected.css',
'<%= assets_dir %>/stylesheets/cartoassets/entry.css'
'<%= editor_assets_dir %>/stylesheets/public/password_protected.css',
'<%= editor_assets_dir %>/stylesheets/cartoassets/entry.css'
],
public_dashboard: [
'<%= assets_dir %>/stylesheets/public_dashboard/**/*.css',
'<%= assets_dir %>/stylesheets/public_map/public_map_buttons.css',
'<%= assets_dir %>/stylesheets/public_map/public_map_footer.css',
'<%= assets_dir %>/stylesheets/cartoassets/entry.css'
'<%= editor_assets_dir %>/stylesheets/public_dashboard/**/*.css',
'<%= editor_assets_dir %>/stylesheets/public_map/public_map_buttons.css',
'<%= editor_assets_dir %>/stylesheets/public_map/public_map_footer.css',
'<%= editor_assets_dir %>/stylesheets/cartoassets/entry.css'
],
public_table: [
'<%= assets_dir %>/stylesheets/table/table.css',
'<%= assets_dir %>/stylesheets/old_elements/modal.css',
'<%= assets_dir %>/stylesheets/old_elements/dialog_small_edit.css',
'<%= assets_dir %>/stylesheets/old_elements/dropdown.css',
'<%= assets_dir %>/stylesheets/public/public_map_wrapper.css',
'<%= assets_dir %>/stylesheets/public/public_table_wrapper.css',
'<%= assets_dir %>/stylesheets/public/public_map_data.css',
'<%= assets_dir %>/stylesheets/public/public_map_body.css',
'<%= assets_dir %>/stylesheets/public/public_map_info.css',
'<%= assets_dir %>/stylesheets/public/public_export.css',
'<%= assets_dir %>/stylesheets/public_table/**/*.css',
'<%= assets_dir %>/stylesheets/public/public_map_fullscreen.css',
'<%= assets_dir %>/stylesheets/map/**/*.css',
'<%= assets_dir %>/stylesheets/cartoassets/entry.css'
'<%= editor_assets_dir %>/stylesheets/table/table.css',
'<%= editor_assets_dir %>/stylesheets/old_elements/modal.css',
'<%= editor_assets_dir %>/stylesheets/old_elements/dialog_small_edit.css',
'<%= editor_assets_dir %>/stylesheets/old_elements/dropdown.css',
'<%= editor_assets_dir %>/stylesheets/public/public_map_wrapper.css',
'<%= editor_assets_dir %>/stylesheets/public/public_table_wrapper.css',
'<%= editor_assets_dir %>/stylesheets/public/public_map_data.css',
'<%= editor_assets_dir %>/stylesheets/public/public_map_body.css',
'<%= editor_assets_dir %>/stylesheets/public/public_map_info.css',
'<%= editor_assets_dir %>/stylesheets/public/public_export.css',
'<%= editor_assets_dir %>/stylesheets/public_table/**/*.css',
'<%= editor_assets_dir %>/stylesheets/public/public_map_fullscreen.css',
'<%= editor_assets_dir %>/stylesheets/map/**/*.css',
'<%= editor_assets_dir %>/stylesheets/cartoassets/entry.css'
],
public_map: [
'<%= assets_dir %>/stylesheets/public_map/**/*.css',
'<%= assets_dir %>/stylesheets/cartoassets/entry.css'
'<%= editor_assets_dir %>/stylesheets/public_map/**/*.css',
'<%= editor_assets_dir %>/stylesheets/cartoassets/entry.css'
],
embed_map: [
'<%= assets_dir %>/stylesheets/embed/**/*.css'
'<%= editor_assets_dir %>/stylesheets/embed/**/*.css'
],
explore: [
'<%= assets_dir %>/stylesheets/explore/**/*.css',
'<%= assets_dir %>/stylesheets/public_map/public_map_buttons.css',
'<%= assets_dir %>/stylesheets/public_map/public_map_footer.css',
'<%= assets_dir %>/stylesheets/cartoassets/entry.css'
'<%= editor_assets_dir %>/stylesheets/explore/**/*.css',
'<%= editor_assets_dir %>/stylesheets/public_map/public_map_buttons.css',
'<%= editor_assets_dir %>/stylesheets/public_map/public_map_footer.css',
'<%= editor_assets_dir %>/stylesheets/cartoassets/entry.css'
],
user_feed: [
'<%= assets_dir %>/stylesheets/user_feed/**/*.css'
'<%= editor_assets_dir %>/stylesheets/user_feed/**/*.css'
],
leaflet: [
'<%= assets_dir %>/stylesheets/map/leaflet.css'
'<%= editor_assets_dir %>/stylesheets/map/leaflet.css'
],
map: [
'<%= assets_dir %>/stylesheets/map/**/*.css'
'<%= editor_assets_dir %>/stylesheets/map/**/*.css'
],
cartodb: [
'<%= assets_dir %>/stylesheets/vendor/cartodb.css'
'<%= editor_assets_dir %>/stylesheets/vendor/cartodb.css'
],
table: [
'<%= assets_dir %>/stylesheets/vendor/codemirror.css',
'<%= assets_dir %>/stylesheets/vendor/show-hint.css',
'<%= assets_dir %>/stylesheets/vendor/cartodb.css',
'<%= assets_dir %>/stylesheets/table/**/*.css'
'<%= editor_assets_dir %>/stylesheets/vendor/codemirror.css',
'<%= editor_assets_dir %>/stylesheets/vendor/show-hint.css',
'<%= editor_assets_dir %>/stylesheets/vendor/cartodb.css',
'<%= editor_assets_dir %>/stylesheets/table/**/*.css'
],
editor: [
'<%= assets_dir %>/stylesheets/editor/core_retrofit.css',
'<%= editor_assets_dir %>/stylesheets/editor/core_retrofit.css',
// From table bundle
'<%= assets_dir %>/stylesheets/vendor/codemirror.css',
'<%= assets_dir %>/stylesheets/vendor/show-hint.css',
'<%= assets_dir %>/stylesheets/table/**/*.css',
'<%= editor_assets_dir %>/stylesheets/vendor/codemirror.css',
'<%= editor_assets_dir %>/stylesheets/vendor/show-hint.css',
'<%= editor_assets_dir %>/stylesheets/table/**/*.css',
// New styles
'<%= assets_dir %>/stylesheets/dashboard/delete-items.css',
'<%= editor_assets_dir %>/stylesheets/dashboard/delete-items.css',
// Overrides for older styles, to work as expected with new_common/default
'<%= assets_dir %>/stylesheets/editor/**/*.css'
'<%= editor_assets_dir %>/stylesheets/editor/**/*.css'
],
front: [
'<%= assets_dir %>/stylesheets/front/*.css'
'<%= editor_assets_dir %>/stylesheets/front/*.css'
],
deep_insights: [
'<%= assets_dir %>/stylesheets/deep-insights/entry.css',
'<%= assets_dir %>/stylesheets/cartodbjs_v4/entry.css'
'<%= editor_assets_dir %>/stylesheets/deep-insights/entry.css',
'<%= editor_assets_dir %>/stylesheets/cartodbjs_v4/entry.css'
],
api_keys: [
'<%= assets_dir %>/stylesheets/api_keys/*.css'
'<%= editor_assets_dir %>/stylesheets/api_keys/*.css'
]
};

@ -52,7 +52,7 @@ module.exports = {
cfg[name] = {
src: bundle.src,
dest: bundle.dest || ('<%= assets_dir %>/javascripts/' + name + '.js'),
dest: bundle.dest || ('<%= editor_assets_dir %>/javascripts/' + name + '.js'),
options: options
};
}

@ -12,7 +12,8 @@ exports.task = function () {
'.sass-cache',
'tmp/sass',
'lib/build/app_config.js',
'<%= assets_dir %>'
'<%= assets_dir %>',
'<%= editor_assets_dir %>'
]
};
};

@ -10,14 +10,14 @@ exports.task = function () {
'tmp/sass/cartoassets'
],
sassDir: 'tmp/sass/editor',
cssDir: '<%= assets_dir %>/stylesheets',
fontsDir: '<%= assets_dir %>/fonts',
httpFontsPath: '<%= env.http_path_prefix %>/assets/<%= pkg.version %>/fonts',
cssDir: '<%= editor_assets_dir %>/stylesheets',
fontsDir: '<%= editor_assets_dir %>/fonts',
httpFontsPath: '<%= env.http_path_prefix %>/editor/<%= editor_assets_version %>/fonts',
imagesDir: 'app/assets/images/',
generatedImagesDir: '<%= assets_dir %>/images/',
httpImagesPath: '<%= env.http_path_prefix %>/assets/<%= pkg.version %>/images/',
httpGeneratedImagesPath: '<%= env.http_path_prefix %>/assets/<%= pkg.version %>/images/',
generatedImagesDir: '<%= editor_assets_dir %>/images/',
httpImagesPath: '<%= env.http_path_prefix %>/editor/<%= editor_assets_version %>/images/',
httpGeneratedImagesPath: '<%= env.http_path_prefix %>/editor/<%= editor_assets_version %>/images/',
environment: 'production',
outputStyle: 'compressed',

@ -15,10 +15,10 @@ var srcToDestHash = function (files, basePath, fileExt) {
exports.task = function () {
return {
js: {
files: srcToDestHash(require('../files/js_files'), '<%= assets_dir %>/javascripts/', '.js')
files: srcToDestHash(require('../files/js_files'), '<%= editor_assets_dir %>/javascripts/', '.js')
},
css: {
files: srcToDestHash(require('../files/css_files'), '<%= assets_dir %>/stylesheets/', '.css')
files: srcToDestHash(require('../files/css_files'), '<%= editor_assets_dir %>/stylesheets/', '.css')
}
};
};

@ -28,7 +28,7 @@ exports.task = function (grunt) {
dot: true,
cwd: 'node_modules/cartoassets/src/fonts',
src: '**/*.*',
dest: '<%= assets_dir %>/fonts/'
dest: '<%= editor_assets_dir %>/fonts/'
}, {
expand: true,
cwd: 'node_modules/cartoassets/src/scss/',
@ -56,7 +56,7 @@ exports.task = function (grunt) {
expand: true,
cwd: 'lib/assets/javascripts/cdb/themes/css/',
src: ['cartodb.css'],
dest: '<%= assets_dir %>/stylesheets/tmp/embeds/',
dest: '<%= editor_assets_dir %>/stylesheets/tmp/embeds/',
rename: function (dest, src) {
return dest + src.replace(/\.css$/, '.scss');
}
@ -73,7 +73,7 @@ exports.task = function (grunt) {
expand: true,
cwd: 'app/assets/images/',
src: ['**/*'],
dest: '<%= assets_dir %>/images/'
dest: '<%= editor_assets_dir %>/images/'
}, {
// Some images should be placed in a unversioned folder
expand: true,
@ -85,37 +85,37 @@ exports.task = function (grunt) {
expand: true,
cwd: 'lib/assets/javascripts/cdb/themes/img/',
src: ['**/*'],
dest: '<%= assets_dir %>/images/themes/'
dest: '<%= editor_assets_dir %>/images/themes/'
}, {
// Fonts
expand: true,
cwd: 'app/assets/fonts/',
src: ['*.{svg,ttf,eot,woff,woff2}'],
dest: '<%= assets_dir %>/fonts/'
dest: '<%= editor_assets_dir %>/fonts/'
}, {
// Client fonts
expand: true,
cwd: 'app/assets/client/fonts/',
src: ['*.{svg,ttf,eot,woff,woff2}'],
dest: '<%= assets_dir %>/fonts/'
dest: '<%= editor_assets_dir %>/fonts/'
}, {
// Flash
expand: true,
cwd: 'app/assets/flash/',
src: ['**/*'],
dest: '<%= assets_dir %>/flash/'
dest: '<%= editor_assets_dir %>/flash/'
}, {
// Favicons
expand: true,
cwd: 'public/favicons/',
src: ['**/*'],
dest: '<%= assets_dir %>/favicons/'
dest: '<%= editor_assets_dir %>/favicons/'
}, {
// Client favicons
expand: true,
cwd: 'app/assets/client/favicons/',
src: ['**/*'],
dest: '<%= assets_dir %>/favicons/'
dest: '<%= editor_assets_dir %>/favicons/'
}]
},
@ -178,9 +178,9 @@ exports.task = function (grunt) {
js: {
files: [{
expand: true,
cwd: '<%= assets_dir %>/javascripts/',
cwd: '<%= editor_assets_dir %>/javascripts/',
src: ['**/*.js'],
dest: '<%= assets_dir %>/javascripts/',
dest: '<%= editor_assets_dir %>/javascripts/',
rename: function (dest, src) {
return dest + src.replace(/\.js$/, '.uncompressed.js');
}

@ -17,7 +17,7 @@ exports.task = function () {
for (var bundleName in browserifyBundles) {
if (!_.contains(excludedBundles, bundleName)) {
var filePath = '<%= assets_dir %>/javascripts/' + bundleName + '.uncompressed.js';
var filePath = '<%= editor_assets_dir %>/javascripts/' + bundleName + '.uncompressed.js';
files[filePath + '.map'] = filePath;
}
}

@ -23,8 +23,8 @@ module.exports = {
cartodbui: {
src: js_files.all.concat([
'lib/build/user_data.js',
'<%= assets_dir %>/javascripts/templates_mustache.js',
'<%= assets_dir %>/javascripts/templates.js',
'<%= editor_assets_dir %>/javascripts/templates_mustache.js',
'<%= editor_assets_dir %>/javascripts/templates.js',
'lib/build/test_init.js']),
options: {
browser: 'phantomjs',

@ -17,46 +17,46 @@ exports.task = function () {
files: [
{
src: jsFiles._templates,
dest: '<%= assets_dir %>/javascripts/templates.js'
dest: '<%= editor_assets_dir %>/javascripts/templates.js'
}, {
src: jsFiles._dashboard_templates,
dest: '<%= assets_dir %>/javascripts/dashboard_templates.js'
dest: '<%= editor_assets_dir %>/javascripts/dashboard_templates.js'
}, {
src: jsFiles._dashboard_templates_static,
dest: '<%= assets_dir %>/javascripts/dashboard_templates_static.js'
dest: '<%= editor_assets_dir %>/javascripts/dashboard_templates_static.js'
}, {
src: jsFiles._keys_templates,
dest: '<%= assets_dir %>/javascripts/keys_templates.js'
dest: '<%= editor_assets_dir %>/javascripts/keys_templates.js'
}, {
src: jsFiles._public_map_templates,
dest: '<%= assets_dir %>/javascripts/public_map_templates.js'
dest: '<%= editor_assets_dir %>/javascripts/public_map_templates.js'
}, {
src: jsFiles._public_map_templates_static,
dest: '<%= assets_dir %>/javascripts/public_map_templates_static.js'
dest: '<%= editor_assets_dir %>/javascripts/public_map_templates_static.js'
}, {
src: jsFiles._embed_map_templates_static,
dest: '<%= assets_dir %>/javascripts/embed_map_templates_static.js'
dest: '<%= editor_assets_dir %>/javascripts/embed_map_templates_static.js'
}, {
src: jsFiles._public_templates,
dest: '<%= assets_dir %>/javascripts/public_templates.js'
dest: '<%= editor_assets_dir %>/javascripts/public_templates.js'
}, {
src: jsFiles._profile_templates,
dest: '<%= assets_dir %>/javascripts/profile_templates.js'
dest: '<%= editor_assets_dir %>/javascripts/profile_templates.js'
}, {
src: jsFiles._account_templates,
dest: '<%= assets_dir %>/javascripts/account_templates.js'
dest: '<%= editor_assets_dir %>/javascripts/account_templates.js'
}, {
src: jsFiles._show_templates_static,
dest: '<%= assets_dir %>/javascripts/show_templates_static.js'
dest: '<%= editor_assets_dir %>/javascripts/show_templates_static.js'
}, {
src: jsFiles._organization_templates,
dest: '<%= assets_dir %>/javascripts/organization_templates.js'
dest: '<%= editor_assets_dir %>/javascripts/organization_templates.js'
}, {
src: jsFiles._mobile_apps_templates,
dest: '<%= assets_dir %>/javascripts/mobile_apps_templates.js'
dest: '<%= editor_assets_dir %>/javascripts/mobile_apps_templates.js'
}, {
src: jsFiles._confirmation_templates,
dest: '<%= assets_dir %>/javascripts/confirmation_templates.js'
dest: '<%= editor_assets_dir %>/javascripts/confirmation_templates.js'
}
]
},
@ -76,7 +76,7 @@ exports.task = function () {
},
files: [
{
'<%= assets_dir %>/javascripts/templates_mustache.js': jsFiles._templates_mustache
'<%= editor_assets_dir %>/javascripts/templates_mustache.js': jsFiles._templates_mustache
}
]
}

@ -20,7 +20,7 @@ exports.task = function () {
'**/*.scss',
'!editor/**/*'
],
dest: '<%= assets_dir %>/stylesheets',
dest: '<%= editor_assets_dir %>/stylesheets',
ext: '.css'
}]
}

@ -25,7 +25,7 @@ exports.task = function () {
var f = files[i];
if (f[0] !== '_' && f !== 'all') {
js['<%= assets_dir %>/javascripts/' + f + '.js'] = ['<%= assets_dir %>/javascripts/' + f + '.uncompressed.js'];
js['<%= editor_assets_dir %>/javascripts/' + f + '.js'] = ['<%= editor_assets_dir %>/javascripts/' + f + '.uncompressed.js'];
}
}
@ -33,7 +33,7 @@ exports.task = function () {
for (bundleName in jsBundles) {
var src = jsBundles[bundleName];
if (bundleName[0] !== '_' && bundleName !== 'all') {
js['<%= assets_dir %>/javascripts/' + bundleName + '.js'] = src;
js['<%= editor_assets_dir %>/javascripts/' + bundleName + '.js'] = src;
}
}
@ -55,7 +55,7 @@ exports.task = function () {
for (bundleName in browserifyBundles) {
if (!_.contains(excludedBundles, bundleName)) {
files = {};
var basePath = '<%= assets_dir %>/javascripts/' + bundleName;
var basePath = '<%= editor_assets_dir %>/javascripts/' + bundleName;
var filePath = basePath + '.uncompressed.js';
files[basePath + '.js'] = [filePath];

Loading…
Cancel
Save