mirror of
https://github.com/louislam/uptime-kuma.git
synced 2024-11-15 01:54:10 -08:00
36f8be040d
Some checks are pending
Auto Test / auto-test (18, ARM64) (push) Blocked by required conditions
Auto Test / auto-test (18, macos-latest) (push) Blocked by required conditions
Auto Test / auto-test (18, ubuntu-latest) (push) Blocked by required conditions
Auto Test / auto-test (18, windows-latest) (push) Blocked by required conditions
Auto Test / auto-test (20.5, ARM64) (push) Blocked by required conditions
Auto Test / auto-test (20.5, macos-latest) (push) Blocked by required conditions
Auto Test / auto-test (20.5, ubuntu-latest) (push) Blocked by required conditions
Auto Test / auto-test (20.5, windows-latest) (push) Blocked by required conditions
Auto Test / armv7-simple-test (18, ARMv7) (push) Blocked by required conditions
Auto Test / armv7-simple-test (20, ARMv7) (push) Blocked by required conditions
Auto Test / check-linters (push) Waiting to run
Auto Test / e2e-test (push) Blocked by required conditions
CodeQL / Analyze (go) (push) Waiting to run
CodeQL / Analyze (javascript-typescript) (push) Waiting to run
Merge Conflict Labeler / Labeling (push) Waiting to run
json-yaml-validate / json-yaml-validate (push) Waiting to run
|
||
---|---|---|
.. | ||
2023-08-16-0000-create-uptime.js | ||
2023-08-18-0301-heartbeat.js | ||
2023-09-29-0000-heartbeat-retires.js | ||
2023-10-08-0000-mqtt-query.js | ||
2023-10-11-1915-push-token-to-32.js | ||
2023-10-16-0000-create-remote-browsers.js | ||
2023-12-20-0000-alter-status-page.js | ||
2023-12-21-0000-stat-ping-min-max.js | ||
2023-12-22-0000-hourly-uptime.js | ||
2024-01-22-0000-stats-extras.js | ||
2024-04-26-0000-snmp-monitor.js | ||
2024-08-24-000-add-cache-bust.js | ||
2024-08-24-0000-conditions.js | ||
README.md |
Info
https://knexjs.org/guide/migrations.html#knexfile-in-other-languages
Basic rules
- All tables must have a primary key named
id
- Filename format:
YYYY-MM-DD-HHMM-patch-name.js
- Avoid native SQL syntax, use knex methods, because Uptime Kuma supports SQLite and MariaDB.
Template
exports.up = function(knex) {
};
exports.down = function(knex) {
};
// exports.config = { transaction: false };
Example
Filename: 2023-06-30-1348-create-user-and-product.js
exports.up = function(knex) {
return knex.schema
.createTable('user', function (table) {
table.increments('id');
table.string('first_name', 255).notNullable();
table.string('last_name', 255).notNullable();
})
.createTable('product', function (table) {
table.increments('id');
table.decimal('price').notNullable();
table.string('name', 1000).notNullable();
}).then(() => {
knex("products").insert([
{ price: 10, name: "Apple" },
{ price: 20, name: "Orange" },
]);
});
};
exports.down = function(knex) {
return knex.schema
.dropTable("product")
.dropTable("user");
};
https://knexjs.org/guide/migrations.html#transactions-in-migrations