start on building test db from scratch
This commit is contained in:
parent
c949c3c3fc
commit
253e14dc9c
226
bin/restore-mastodon-data.js
Normal file
226
bin/restore-mastodon-data.js
Normal file
|
@ -0,0 +1,226 @@
|
|||
const times = require('lodash/times')
|
||||
|
||||
const actions = times(30, i => ({
|
||||
post: {
|
||||
text: (i + 1)
|
||||
},
|
||||
user: 'admin'
|
||||
})).concat([
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: 'hello world'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: "here's a kitten",
|
||||
media: ['kitten1.jpg']
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: "here's a secret kitten",
|
||||
media: ['kitten2.jpg'],
|
||||
sensitive: true
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: "here's 2 kitten photos",
|
||||
media: ['kitten3.jpg', 'kitten4.jpg']
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: "here's an animated kitten gif",
|
||||
media: ['kitten1.gif']
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: "here's a secret animated kitten gif",
|
||||
media: ['kitten2.gif'],
|
||||
sensitive: true
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: "content warning",
|
||||
spoiler: 'CW'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: "here's a video",
|
||||
media: ['kitten1.mp4']
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: "here's a secret video",
|
||||
media: ['kitten2.mp4']
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
text: "here's a kitten with a CW",
|
||||
media: ['kitten5.jpg'],
|
||||
sensitive: true,
|
||||
spoiler: 'kitten CW'
|
||||
}
|
||||
},
|
||||
// notifications for foobar
|
||||
{
|
||||
user: 'admin',
|
||||
follow: 'foobar'
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
post: {
|
||||
text: '@foobar hello foobar',
|
||||
privacy: 'unlisted'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'quux',
|
||||
follow: 'foobar'
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
post: {
|
||||
internalId: 3,
|
||||
text: '@foobar notification of direct message',
|
||||
privacy: 'direct'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
favorite: 3
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
post: {
|
||||
internalId: 4,
|
||||
text: '@foobar notification of followers-only message',
|
||||
privacy: 'private'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
favorite: 4
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
post: {
|
||||
internalId: 1,
|
||||
text: '@foobar notification of unlisted message',
|
||||
privacy: 'unlisted'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
boost: 1
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
post: {
|
||||
internalId: 2,
|
||||
text: 'this is unlisted',
|
||||
privacy: 'private'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
boost: 2
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
favorite: 2
|
||||
},
|
||||
{
|
||||
user: 'quux',
|
||||
post: {
|
||||
internalId: 5,
|
||||
text: 'pinned toot 1',
|
||||
privacy: 'private'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'quux',
|
||||
post: {
|
||||
internalId: 6,
|
||||
text: 'pinned toot 2',
|
||||
privacy: 'private'
|
||||
}
|
||||
}
|
||||
]).concat(times(25, i => ({
|
||||
user: 'quux',
|
||||
post: {
|
||||
internalId: 100 + i,
|
||||
text: 'unlisted thread ' + (i + 1),
|
||||
privacy: 'private',
|
||||
inReplyTo: i > 0 && (100 + i)
|
||||
}
|
||||
}))).concat([
|
||||
{
|
||||
user: 'quux',
|
||||
pin: 5
|
||||
},
|
||||
{
|
||||
user: 'quux',
|
||||
pin: 6
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
boost: 5
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
favorite: 5
|
||||
},
|
||||
{
|
||||
user: 'foobar',
|
||||
favorite: 5
|
||||
},
|
||||
{
|
||||
user: 'admin',
|
||||
favorite: 6
|
||||
},
|
||||
{
|
||||
user: 'ExternalLinks',
|
||||
post: {
|
||||
text: 'here are some hashtags: #kitten #kitties',
|
||||
privacy: 'private'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'ExternalLinks',
|
||||
post: {
|
||||
text: 'here are some external links: https://joinmastodon.org https://github.com/tootsuite/mastodon',
|
||||
privacy: 'private'
|
||||
}
|
||||
},
|
||||
{
|
||||
user: 'ExternalLinks',
|
||||
post: {
|
||||
text: 'here are some users: @admin @quux',
|
||||
privacy: 'private'
|
||||
}
|
||||
}
|
||||
])
|
||||
|
||||
async function restoreMastodonData () {
|
||||
console.log('Restoring mastodon data...')
|
||||
}
|
||||
|
||||
module.exports = restoreMastodonData
|
|
@ -1,3 +1,4 @@
|
|||
const restoreMastodonData = require ('./restore-mastodon-data')
|
||||
const pify = require('pify')
|
||||
const exec = require('child-process-promise').exec
|
||||
const spawn = require('child-process-promise').spawn
|
||||
|
@ -30,8 +31,8 @@ async function cloneMastodon () {
|
|||
}
|
||||
}
|
||||
|
||||
async function restoreMastodonData () {
|
||||
console.log('Restoring mastodon data...')
|
||||
async function setupMastodonDatabase() {
|
||||
console.log('Setting up mastodon database...')
|
||||
try {
|
||||
await exec('dropdb mastodon_development', {cwd: mastodonDir})
|
||||
} catch (e) { /* ignore */ }
|
||||
|
@ -70,8 +71,9 @@ async function runMastodon () {
|
|||
|
||||
async function main () {
|
||||
await cloneMastodon()
|
||||
await restoreMastodonData()
|
||||
await setupMastodonDatabase()
|
||||
await runMastodon()
|
||||
//await restoreMastodonData()
|
||||
}
|
||||
|
||||
process.on('SIGINT', function () {
|
||||
|
|
Loading…
Reference in a new issue