Merge branch 'master' into fix-ctm-limit

This commit is contained in:
Jim LAURIE 2018-04-20 11:59:14 +02:00 committed by GitHub
commit a99ccebcbc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 103 additions and 7 deletions

View File

@ -0,0 +1,96 @@
# Migrating from 3.0.0-alpha.11 to 3.0.0-alpha.12
This migration guide is a mix of migrations from 3.0.0-alpha.11.1 to 3.0.0-alpha.11.2, 3.0.0-alpha.11.2 to 3.0.0-alpha.11.3 and from 3.0.0-alpha.11.3 to 3.0.0-alpha.12.
> Feel free to [join us on Slack](http://slack.strapi.io) and ask questions about the migration process.
## Getting started
Install Strapi `alpha.12` globally on your computer. To do so run `npm install strapi@3.0.0-alpha.12 -g`.
When it's done, generate a new empty project `strapi new myNewProject` (don't pay attention to the database configuration).
## Configurations
You will have to update just 1 file: `package.json`
- Edit the Strapi's dependencies version: (move Strapi's dependencies to `3.0.0-alpha.12` version) in `package.json` file
```json
{
"dependencies": {
"lodash": "4.x.x",
"strapi": "3.0.0-alpha.12",
"strapi-mongoose": "3.0.0-alpha.12"
}
}
```
## Update the Admin
Delete your old admin folder and replace it by the new one.
## Update the Plugins
Copy the fields and relations you had in your `/plugins/users-permissions/models/User.settings.json` file in the new one.
Then, delete your old `plugins` folder and replace it by the new one.
## Update roles
> This update is if you come from version before alpha-11.2
Update `type` of `Guest` role to `public` in your database. You can also update name and description:
```json
{
"name": "Public",
"description": "Default role given to unauthenticated user.",
"type": "public"
}
```
Create Authenticated role:
```json
{
"name": "Authenticated",
"description": "Default role given to authenticated user.",
"type": "authenticated"
}
```
In `Users & Permissions > Advanced` in admin panel update default role to `Authenticated`
You also will have to reset your roles permissions.
### Update bookshelf filters
> This update is if you come from version before alpha-11.3
You will have to replace your `fetchAll` services queries of your generated API:
```js
_.forEach(convertedParams.where, (where, key) => {
if (_.isArray(where.value)) {
for (const value in where.value) {
qb[value ? 'where' : 'orWhere'](key, where.symbol, where.value[value])
}
} else {
qb.where(key, where.symbol, where.value);
}
});
if (convertedParams.sort) {
qb.orderBy(convertedParams.sort.key, convertedParams.sort.order);
}
qb.offset(convertedParams.start);
qb.limit(convertedParams.limit);
```
That's all, you have now upgraded to Strapi `alpha.12`.

View File

@ -54,7 +54,7 @@ module.exports = {
strapi.log.info(`Installing ${plugin}...`);
exec(`node ${strapiBin} install ${plugin} ${port === '4000' ? '--dev' : ''}`);
exec(`node "${strapiBin}" install ${plugin} ${port === '4000' ? '--dev' : ''}`);
ctx.send({ ok: true });
@ -87,7 +87,7 @@ module.exports = {
strapi.reload.isWatching = false;
strapi.log.info(`Uninstalling ${plugin}...`);
exec(`node ${strapiBin} uninstall ${plugin}`);
exec(`node "${strapiBin}" uninstall ${plugin}`);
ctx.send({ ok: true });

View File

@ -24,7 +24,7 @@ try {
// Check if path is existing.
fs.accessSync(adminDirPath, fs.constants.R_OK | fs.constants.W_OK);
const install = exec(`cd ${adminDirPath} && npm install --prod --ignore-scripts`, {
const install = exec(`cd "${adminDirPath}" && npm install --prod --ignore-scripts`, {
silent: true
});
@ -35,8 +35,8 @@ try {
console.log('✅ Success');
console.log('');
} catch (err) {
if (err.code === 'ENOENT') {
} catch (e) {
if (e.code === 'ENOENT') {
console.log('✅ Success');
console.log('');
@ -60,7 +60,7 @@ try {
console.log('📦 Installing packages...');
try {
const install = exec(`cd ${pluginPath} && npm install --prod --ignore-scripts`, {
const install = exec(`cd "${pluginPath}" && npm install --prod --ignore-scripts`, {
silent: true
});
@ -76,7 +76,7 @@ try {
}
});
} catch (e) {
if (err.code === 'ENOENT') {
if (e.code === 'ENOENT') {
console.log('✅ Success');
console.log('');