0
Fork 0
mirror of https://github.com/logto-io/logto.git synced 2025-01-20 21:32:31 -05:00

Merge pull request #2207 from logto-io/gao-update-content

chore: update content
This commit is contained in:
Gao Sun 2022-10-19 19:04:27 +08:00 committed by GitHub
commit f9e46de8ca
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 3 additions and 81 deletions

View file

@ -55,12 +55,12 @@ curl -fsSL https://raw.githubusercontent.com/logto-io/logto/HEAD/docker-compose.
TAG=prerelease docker compose -p logto -f - up
```
#### One-liner script
#### npm-init
Requires [Node.js](https://nodejs.org/) `^16.13.0` + [PostgreSQL](https://postgresql.org/) `^14.0`.
```bash
node -e "$(printf "%s" "$(curl -fsSL https://raw.githubusercontent.com/logto-io/logto/HEAD/install.js)")"
npm init @logto
```
## Language support

View file

@ -11,7 +11,7 @@ services:
- 3001:3001
environment:
- TRUST_PROXY_HEADER=1
- DB_URL=postgres://postgres:p0stgr3s@postgres:5432
- DB_URL=postgres://postgres:p0stgr3s@postgres:5432/logto
postgres:
image: postgres:14-alpine
user: postgres

View file

@ -1,72 +0,0 @@
const { execSync, spawn, spawnSync } = require('child_process');
const { existsSync } = require('fs');
const readline = require('readline');
const isVersionGreaterThan = (version, targetMajor) => Number(version.split('.')[0]) >= targetMajor;
const trimV = (version) => version.startsWith('v') ? version.slice(1) : version;
const question = async (query) => new Promise((resolve) => {
const rl = readline.createInterface({
input: process.stdin,
output: process.stdout,
});
rl.question(query, (answer) => {
rl.close();
resolve(answer);
});
});
const confirm = async (query) => {
const answer = await question(`${query} (Y/n) `);
return answer === '' || ['y', 'yes', 'yep', 'yeah'].includes(answer.toLowerCase());
};
const safeExecSync = (command) => {
try {
return execSync(command, { encoding: 'utf-8' });
} catch {}
};
const directory = 'logto';
const nodeMajorVersion = 16;
const postgresMajorVersion = 14;
(async () => {
if (existsSync(directory)) {
throw new Error(`\`${directory}\` already exists in the current directory.`);
}
const nodeVersion = execSync('node -v', { encoding: 'utf-8' });
if (!isVersionGreaterThan(trimV(nodeVersion), nodeMajorVersion)) {
throw new Error(`Logto requires NodeJS >= ${nodeMajorVersion}.0.0.`);
}
const pgOutput = safeExecSync('postgres --version') ?? '';
const pgArray = pgOutput.split(' ');
const pgVersion = pgArray[pgArray.length - 1];
if (!isVersionGreaterThan(trimV(pgVersion), postgresMajorVersion)) {
const answer = await confirm(`Logto requires PostgreSQL >= ${postgresMajorVersion}.0.0 but cannot find in the current environment.\nDo you have a remote PostgreSQL instance ready?`);
if (!answer) {
process.exit(1);
}
}
// Download and extract
spawnSync(
'sh',
['-c', 'curl -L https://github.com/logto-io/logto/releases/latest/download/logto.tar.gz | tar -xz'],
{ stdio: 'inherit' },
);
const startCommand = `cd ${directory} && npm start`;
const answer = await confirm('Would you like to start Logto now?');
if (answer) {
spawn('sh', ['-c', startCommand], { stdio: 'inherit' });
} else {
console.log(`You can use \`${startCommand}\` to start Logto. Happy hacking!`);
}
})();

View file

@ -1,6 +0,0 @@
{
"version": "1.0.0-beta.12",
"npmClient": "pnpm",
"useWorkspaces": true,
"changelogPreset": "conventionalcommits"
}