ember-cli-deploy / ember-cli-deploy/ember-cli-deploy-json-config

Respect outputPaths in ember-cli-build

Open
#34 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
JavaScript
Stars
17
Forks
11
PR merge metrics
No merged PRs in 30d

Description

I recently implemented this addon and noticed that the index.json output does not respect the `outputPaths` config setting in `ember-cli-build.js`. Here is a sample of my configuration and the resulting index.json output from `ember deploy production`:

```
// ember-cli-build.js
const isProduction = ( process.env.EMBER_ENV || 'development' ) === 'production';
const assetPath = isProduction ? '' : '/assets';

module.exports = function(defaults) {
var app = new EmberApp(defaults, {
outputPaths: {
app: {
html: 'index.html',
css: {
'app': assetPath + '/app.css'
},
js: assetPath + '/app.js'
},
vendor: {
css: assetPath + '/vendor.css',
js: assetPath + '/vendor.js'
}
}
});
}
```

```
// config/deploy.js
var ENV = {
build: {},
'json-config': {
jsonBlueprint(context, pluginHelper) {
var jsonBlueprint = pluginHelper.readConfigDefault('jsonBlueprint');
jsonBlueprint.script.includeContent = true;
return jsonBlueprint;
}
}
};
```

```
// index.json
{
"base": [],
"meta": [],
"link": [{
"rel": "stylesheet",
"href": "assets/vendor-13455b8fd285c046141dd54ae73890f8.css"
}, {
"rel": "stylesheet",
"href": "assets/app-efe517a8fe179e4392e64c2a9ce8fe05.css"
}],
"script": [{
"src": "assets/vendor-127d2a9b59896b5ddff4de18193179cb.js"
}, {
"src": "assets/app-774827c1c48acfbdb034cbc16d3f5fb7.js"
}]
}
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the plugin code that builds index.json and compare its generated asset paths with the outputPaths configuration shown in ember-cli-build.js. Use config/deploy.js and the sample index.json as references, then run ember deploy production to verify that the generated link and script paths honor the configured outputPaths.

Written by the indexing model from the issue text.

Assessment

Tech stack
javascript
Domain
build-system
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.