mirror of
https://github.com/strapi/strapi.git
synced 2025-08-09 09:14:49 +00:00
Merge branch 'master' into upgrade/reactstrap
This commit is contained in:
commit
db39065c0c
@ -316,7 +316,7 @@ module.exports = ({ model, modelKey, strapi }) => {
|
|||||||
|
|
||||||
// verify the provided ids are related to this entity.
|
// verify the provided ids are related to this entity.
|
||||||
idsToKeep.forEach(id => {
|
idsToKeep.forEach(id => {
|
||||||
if (allIds.findIndex(currentId => currentId.toString() === id) === -1) {
|
if (allIds.findIndex(currentId => currentId.toString() === id.toString()) === -1) {
|
||||||
const err = new Error(
|
const err = new Error(
|
||||||
`Some of the provided components in ${key} are not related to the entity`
|
`Some of the provided components in ${key} are not related to the entity`
|
||||||
);
|
);
|
||||||
|
@ -12,10 +12,7 @@ const { trackUsage, captureStderr } = require('./utils/usage');
|
|||||||
const packageJSON = require('./resources/json/package.json');
|
const packageJSON = require('./resources/json/package.json');
|
||||||
const databaseJSON = require('./resources/json/database.json.js');
|
const databaseJSON = require('./resources/json/database.json.js');
|
||||||
|
|
||||||
module.exports = async function createProject(
|
module.exports = async function createProject(scope, { connection, dependencies }) {
|
||||||
scope,
|
|
||||||
{ connection, dependencies }
|
|
||||||
) {
|
|
||||||
console.log('Creating files.');
|
console.log('Creating files.');
|
||||||
|
|
||||||
const { rootPath } = scope;
|
const { rootPath } = scope;
|
||||||
@ -29,13 +26,12 @@ module.exports = async function createProject(
|
|||||||
const dotFiles = await fse.readdir(join(resources, 'dot-files'));
|
const dotFiles = await fse.readdir(join(resources, 'dot-files'));
|
||||||
await Promise.all(
|
await Promise.all(
|
||||||
dotFiles.map(name => {
|
dotFiles.map(name => {
|
||||||
return fse.copy(
|
return fse.copy(join(resources, 'dot-files', name), join(rootPath, `.${name}`));
|
||||||
join(resources, 'dot-files', name),
|
|
||||||
join(rootPath, `.${name}`)
|
|
||||||
);
|
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
|
await trackUsage({ event: 'didCopyProjectFiles', scope });
|
||||||
|
|
||||||
// copy templates
|
// copy templates
|
||||||
await fse.writeJSON(
|
await fse.writeJSON(
|
||||||
join(rootPath, 'package.json'),
|
join(rootPath, 'package.json'),
|
||||||
@ -51,6 +47,8 @@ module.exports = async function createProject(
|
|||||||
}
|
}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
await trackUsage({ event: 'didWritePackageJSON', scope });
|
||||||
|
|
||||||
// ensure node_modules is created
|
// ensure node_modules is created
|
||||||
await fse.ensureDir(join(rootPath, 'node_modules'));
|
await fse.ensureDir(join(rootPath, 'node_modules'));
|
||||||
|
|
||||||
@ -66,11 +64,15 @@ module.exports = async function createProject(
|
|||||||
);
|
);
|
||||||
})
|
})
|
||||||
);
|
);
|
||||||
|
|
||||||
|
await trackUsage({ event: 'didCopyConfigurationFiles', scope });
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
await fse.remove(scope.rootPath);
|
await fse.remove(scope.rootPath);
|
||||||
throw err;
|
throw err;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
await trackUsage({ event: 'willInstallProjectDependencies', scope });
|
||||||
|
|
||||||
const installPrefix = chalk.yellow('Installing dependencies:');
|
const installPrefix = chalk.yellow('Installing dependencies:');
|
||||||
const loader = ora(installPrefix).start();
|
const loader = ora(installPrefix).start();
|
||||||
|
|
||||||
@ -93,6 +95,8 @@ module.exports = async function createProject(
|
|||||||
|
|
||||||
loader.stop();
|
loader.stop();
|
||||||
console.log(`Dependencies installed ${chalk.green('successfully')}.`);
|
console.log(`Dependencies installed ${chalk.green('successfully')}.`);
|
||||||
|
|
||||||
|
await trackUsage({ event: 'didInstallProjectDependencies', scope });
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
loader.stop();
|
loader.stop();
|
||||||
await trackUsage({
|
await trackUsage({
|
||||||
@ -119,9 +123,7 @@ module.exports = async function createProject(
|
|||||||
);
|
);
|
||||||
console.log();
|
console.log();
|
||||||
console.log(
|
console.log(
|
||||||
`cd ${chalk.green(rootPath)} && ${chalk.cyan(
|
`cd ${chalk.green(rootPath)} && ${chalk.cyan(scope.useYarn ? 'yarn' : 'npm')} install`
|
||||||
scope.useYarn ? 'yarn' : 'npm'
|
|
||||||
)} install`
|
|
||||||
);
|
);
|
||||||
console.log();
|
console.log();
|
||||||
|
|
||||||
|
@ -71,6 +71,7 @@ function trackError({ scope, error }) {
|
|||||||
version: scope.strapiVersion,
|
version: scope.strapiVersion,
|
||||||
nodeVersion: process.version,
|
nodeVersion: process.version,
|
||||||
docker: scope.docker,
|
docker: scope.docker,
|
||||||
|
useYarn: scope.useYarn,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
@ -92,6 +93,7 @@ function trackUsage({ event, scope, error }) {
|
|||||||
node_version: process.version,
|
node_version: process.version,
|
||||||
version: scope.strapiVersion,
|
version: scope.strapiVersion,
|
||||||
docker: scope.docker,
|
docker: scope.docker,
|
||||||
|
useYarn: scope.useYarn,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
|
@ -29,7 +29,7 @@ module.exports = {
|
|||||||
const readStream = streamifier.createReadStream(file.buffer);
|
const readStream = streamifier.createReadStream(file.buffer);
|
||||||
const writeStream = client.upload({
|
const writeStream = client.upload({
|
||||||
...options,
|
...options,
|
||||||
remote: file.name,
|
remote: file.hash,
|
||||||
contentType: file.mime,
|
contentType: file.mime,
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -38,22 +38,21 @@ module.exports = {
|
|||||||
writeStream.on('error', error => error && reject(error));
|
writeStream.on('error', error => error && reject(error));
|
||||||
writeStream.on('success', result => {
|
writeStream.on('success', result => {
|
||||||
remoteURL()
|
remoteURL()
|
||||||
.then(data =>
|
.then(data => {
|
||||||
resolve(
|
resolve(
|
||||||
Object.assign(file, {
|
Object.assign(file, {
|
||||||
name: result.name,
|
|
||||||
mime: result.contentType,
|
mime: result.contentType,
|
||||||
url: `${data.cdnSslUri}/${result.name}`,
|
url: `${data.cdnSslUri}/${result.name}`,
|
||||||
})
|
})
|
||||||
)
|
);
|
||||||
)
|
})
|
||||||
.catch(err => console.error(err) && reject(err));
|
.catch(err => console.error(err) && reject(err));
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
delete(file) {
|
delete(file) {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
client.removeFile(config.container, file.name, error => {
|
client.removeFile(config.container, file.hash, error => {
|
||||||
if (error) return reject(error);
|
if (error) return reject(error);
|
||||||
return resolve();
|
return resolve();
|
||||||
});
|
});
|
||||||
|
Loading…
x
Reference in New Issue
Block a user