refactor: server - rename *_updated_at columns #45
|
@ -131,8 +131,7 @@ func (a updateServerParamsApplier) apply(q *bun.UpdateQuery) *bun.UpdateQuery {
|
|||
}
|
||||
|
||||
if tribeDataSyncedAt := a.params.TribeDataSyncedAt(); tribeDataSyncedAt.Valid {
|
||||
// TODO: rename this column to tribe_data_synced_at
|
||||
q = q.Set("tribe_data_updated_at = ?", tribeDataSyncedAt.V)
|
||||
q = q.Set("tribe_data_synced_at = ?", tribeDataSyncedAt.V)
|
||||
}
|
||||
|
||||
if numPlayers := a.params.NumPlayers(); numPlayers.Valid {
|
||||
|
@ -140,8 +139,7 @@ func (a updateServerParamsApplier) apply(q *bun.UpdateQuery) *bun.UpdateQuery {
|
|||
}
|
||||
|
||||
if playerDataSyncedAt := a.params.PlayerDataSyncedAt(); playerDataSyncedAt.Valid {
|
||||
// TODO: rename this column to player_data_synced_at
|
||||
q = q.Set("player_data_updated_at = ?", playerDataSyncedAt.V)
|
||||
q = q.Set("player_data_synced_at = ?", playerDataSyncedAt.V)
|
||||
}
|
||||
|
||||
if numVillages := a.params.NumVillages(); numVillages.Valid {
|
||||
|
@ -161,13 +159,11 @@ func (a updateServerParamsApplier) apply(q *bun.UpdateQuery) *bun.UpdateQuery {
|
|||
}
|
||||
|
||||
if villageDataSyncedAt := a.params.VillageDataSyncedAt(); villageDataSyncedAt.Valid {
|
||||
// TODO: rename this column to village_data_synced_at
|
||||
q = q.Set("village_data_updated_at = ?", villageDataSyncedAt.V)
|
||||
q = q.Set("village_data_synced_at = ?", villageDataSyncedAt.V)
|
||||
}
|
||||
|
||||
if ennoblementDataSyncedAt := a.params.EnnoblementDataSyncedAt(); ennoblementDataSyncedAt.Valid {
|
||||
// TODO: rename this column to ennoblement_data_synced_at
|
||||
q = q.Set("ennoblement_data_updated_at = ?", ennoblementDataSyncedAt.V)
|
||||
q = q.Set("ennoblement_data_synced_at = ?", ennoblementDataSyncedAt.V)
|
||||
}
|
||||
|
||||
if tribeSnapshotsCreatedAt := a.params.TribeSnapshotsCreatedAt(); tribeSnapshotsCreatedAt.Valid {
|
||||
|
|
|
@ -12,12 +12,12 @@
|
|||
num_barbarian_villages: 1180
|
||||
num_bonus_villages: 512
|
||||
created_at: 2022-03-19T12:00:54.000Z
|
||||
player_data_updated_at: 2022-03-19T12:00:54.000Z
|
||||
player_data_synced_at: 2022-03-19T12:00:54.000Z
|
||||
player_snapshots_created_at: 2022-03-19T12:00:54.000Z
|
||||
tribe_data_updated_at: 2022-03-19T12:00:54.000Z
|
||||
tribe_data_synced_at: 2022-03-19T12:00:54.000Z
|
||||
tribe_snapshots_created_at: 2022-03-19T12:00:54.000Z
|
||||
village_data_updated_at: 2022-03-19T12:00:54.000Z
|
||||
ennoblement_data_updated_at: 2022-03-19T12:00:54.000Z
|
||||
village_data_synced_at: 2022-03-19T12:00:54.000Z
|
||||
ennoblement_data_synced_at: 2022-03-19T12:00:54.000Z
|
||||
version_code: de
|
||||
- _id: en113
|
||||
key: en113
|
||||
|
@ -31,12 +31,12 @@
|
|||
num_barbarian_villages: 700
|
||||
num_bonus_villages: 1024
|
||||
created_at: 2021-04-02T16:01:25.000Z
|
||||
player_data_updated_at: 2021-04-02T16:01:25.000Z
|
||||
player_data_synced_at: 2021-04-02T16:01:25.000Z
|
||||
player_snapshots_created_at: 2021-04-02T16:01:25.000Z
|
||||
tribe_data_updated_at: 2021-04-02T16:01:25.000Z
|
||||
tribe_data_synced_at: 2021-04-02T16:01:25.000Z
|
||||
tribe_snapshots_created_at: 2021-04-02T16:01:25.000Z
|
||||
village_data_updated_at: 2021-04-02T16:01:25.000Z
|
||||
ennoblement_data_updated_at: 2021-04-02T16:01:25.000Z
|
||||
village_data_synced_at: 2021-04-02T16:01:25.000Z
|
||||
ennoblement_data_synced_at: 2021-04-02T16:01:25.000Z
|
||||
version_code: en
|
||||
- _id: it70
|
||||
key: it70
|
||||
|
@ -50,12 +50,12 @@
|
|||
num_barbarian_villages: 1682
|
||||
num_bonus_villages: 256
|
||||
created_at: 2022-03-19T12:00:04.000Z
|
||||
player_data_updated_at: 2022-03-19T12:00:04.000Z
|
||||
player_data_synced_at: 2022-03-19T12:00:04.000Z
|
||||
player_snapshots_created_at: 2022-03-19T12:00:04.000Z
|
||||
tribe_data_updated_at: 2022-03-19T12:00:04.000Z
|
||||
tribe_data_synced_at: 2022-03-19T12:00:04.000Z
|
||||
tribe_snapshots_created_at: 2022-03-19T12:00:04.000Z
|
||||
village_data_updated_at: 2022-03-19T12:00:04.000Z
|
||||
ennoblement_data_updated_at: 2022-03-19T12:00:04.000Z
|
||||
village_data_synced_at: 2022-03-19T12:00:04.000Z
|
||||
ennoblement_data_synced_at: 2022-03-19T12:00:04.000Z
|
||||
version_code: it
|
||||
- _id: pl169
|
||||
key: pl169
|
||||
|
@ -69,12 +69,12 @@
|
|||
num_barbarian_villages: 1574
|
||||
num_bonus_villages: 2048
|
||||
created_at: 2022-03-19T12:01:39.000Z
|
||||
player_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
player_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
player_snapshots_created_at: 2022-03-19T12:01:39.000Z
|
||||
tribe_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
tribe_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
tribe_snapshots_created_at: 2022-03-19T12:01:39.000Z
|
||||
village_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
ennoblement_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
village_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
ennoblement_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
version_code: pl
|
||||
- model: Tribe
|
||||
rows:
|
||||
|
|
|
@ -11,32 +11,28 @@ import (
|
|||
var ServerMetaColumns = []string{"key", "url", "open"}
|
||||
|
||||
type Server struct {
|
||||
bun.BaseModel `bun:"table:servers,alias:server"`
|
||||
Key string `bun:"key,nullzero,pk"`
|
||||
URL string `bun:"url,nullzero"`
|
||||
Open bool `bun:"open"`
|
||||
Special bool `bun:"special"`
|
||||
NumPlayers int `bun:"num_players"`
|
||||
NumTribes int `bun:"num_tribes"`
|
||||
NumVillages int `bun:"num_villages"`
|
||||
NumPlayerVillages int `bun:"num_player_villages"`
|
||||
NumBarbarianVillages int `bun:"num_barbarian_villages"`
|
||||
NumBonusVillages int `bun:"num_bonus_villages"`
|
||||
Config ServerConfig `bun:"config"`
|
||||
BuildingInfo BuildingInfo `bun:"building_info"`
|
||||
UnitInfo UnitInfo `bun:"unit_info"`
|
||||
CreatedAt time.Time `bun:"created_at,nullzero"`
|
||||
// TODO: rename this column to player_data_synced_at
|
||||
PlayerDataUpdatedAt time.Time `bun:"player_data_updated_at,nullzero"`
|
||||
PlayerSnapshotsCreatedAt time.Time `bun:"player_snapshots_created_at,nullzero"`
|
||||
// TODO: rename this column to tribe_data_synced_at
|
||||
TribeDataUpdatedAt time.Time `bun:"tribe_data_updated_at,nullzero"`
|
||||
TribeSnapshotsCreatedAt time.Time `bun:"tribe_snapshots_created_at,nullzero"`
|
||||
// TODO: rename this column to village_data_synced_at
|
||||
VillageDataUpdatedAt time.Time `bun:"village_data_updated_at,nullzero"`
|
||||
// TODO: rename this column to ennoblement_data_synced_at
|
||||
EnnoblementDataUpdatedAt time.Time `bun:"ennoblement_data_updated_at,nullzero"`
|
||||
VersionCode string `bun:"version_code,nullzero"`
|
||||
bun.BaseModel `bun:"table:servers,alias:server"`
|
||||
Key string `bun:"key,nullzero,pk"`
|
||||
URL string `bun:"url,nullzero"`
|
||||
Open bool `bun:"open"`
|
||||
Special bool `bun:"special"`
|
||||
NumPlayers int `bun:"num_players"`
|
||||
NumTribes int `bun:"num_tribes"`
|
||||
NumVillages int `bun:"num_villages"`
|
||||
NumPlayerVillages int `bun:"num_player_villages"`
|
||||
NumBarbarianVillages int `bun:"num_barbarian_villages"`
|
||||
NumBonusVillages int `bun:"num_bonus_villages"`
|
||||
Config ServerConfig `bun:"config"`
|
||||
BuildingInfo BuildingInfo `bun:"building_info"`
|
||||
UnitInfo UnitInfo `bun:"unit_info"`
|
||||
CreatedAt time.Time `bun:"created_at,nullzero"`
|
||||
PlayerDataUpdatedAt time.Time `bun:"player_data_synced_at,nullzero"`
|
||||
PlayerSnapshotsCreatedAt time.Time `bun:"player_snapshots_created_at,nullzero"`
|
||||
TribeDataUpdatedAt time.Time `bun:"tribe_data_synced_at,nullzero"`
|
||||
TribeSnapshotsCreatedAt time.Time `bun:"tribe_snapshots_created_at,nullzero"`
|
||||
VillageDataUpdatedAt time.Time `bun:"village_data_synced_at,nullzero"`
|
||||
EnnoblementDataUpdatedAt time.Time `bun:"ennoblement_data_synced_at,nullzero"`
|
||||
VersionCode string `bun:"version_code,nullzero"`
|
||||
}
|
||||
|
||||
func (s Server) ToDomain() (domain.Server, error) {
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
package migrations
|
||||
|
||||
import (
|
||||
"context"
|
||||
"database/sql"
|
||||
"fmt"
|
||||
|
||||
"github.com/uptrace/bun"
|
||||
)
|
||||
|
||||
func init() {
|
||||
migrations.MustRegister(func(ctx context.Context, db *bun.DB) error {
|
||||
return db.RunInTx(ctx, &sql.TxOptions{}, func(ctx context.Context, tx bun.Tx) error {
|
||||
for oldColumn, newColumn := range getColumnsToRename20240504051104() {
|
||||
_, err := tx.ExecContext(ctx, "ALTER TABLE servers RENAME COLUMN ? TO ?", bun.Safe(oldColumn), bun.Safe(newColumn))
|
||||
if err != nil {
|
||||
return fmt.Errorf("%s: %w", oldColumn, err)
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
})
|
||||
}, func(ctx context.Context, db *bun.DB) error {
|
||||
return db.RunInTx(ctx, &sql.TxOptions{}, func(ctx context.Context, tx bun.Tx) error {
|
||||
for oldColumn, newColumn := range getColumnsToRename20240504051104() {
|
||||
_, err := tx.ExecContext(ctx, "ALTER TABLE servers RENAME COLUMN ? TO ?", bun.Safe(newColumn), bun.Safe(oldColumn))
|
||||
if err != nil {
|
||||
return fmt.Errorf("%s: %w", newColumn, err)
|
||||
}
|
||||
}
|
||||
|
||||
return nil
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
func getColumnsToRename20240504051104() map[string]string {
|
||||
return map[string]string{
|
||||
"player_data_updated_at": "player_data_synced_at",
|
||||
"tribe_data_updated_at": "tribe_data_synced_at",
|
||||
"village_data_updated_at": "village_data_synced_at",
|
||||
"ennoblement_data_updated_at": "ennoblement_data_synced_at",
|
||||
}
|
||||
}
|
|
@ -12,12 +12,12 @@
|
|||
num_barbarian_villages: 44
|
||||
num_bonus_villages: 0
|
||||
created_at: 2022-01-19T12:00:54.000Z
|
||||
player_data_updated_at: 2022-01-19T12:00:54.000Z
|
||||
player_data_synced_at: 2022-01-19T12:00:54.000Z
|
||||
player_snapshots_created_at: 2022-01-19T12:00:54.000Z
|
||||
tribe_data_updated_at: 2022-01-19T12:00:54.000Z
|
||||
tribe_data_synced_at: 2022-01-19T12:00:54.000Z
|
||||
tribe_snapshots_created_at: 2022-01-19T12:00:54.000Z
|
||||
village_data_updated_at: 2022-01-19T12:00:54.000Z
|
||||
ennoblement_data_updated_at: 2022-01-19T12:00:54.000Z
|
||||
village_data_synced_at: 2022-01-19T12:00:54.000Z
|
||||
ennoblement_data_synced_at: 2022-01-19T12:00:54.000Z
|
||||
version_code: de
|
||||
- _id: de188
|
||||
key: de188
|
||||
|
@ -31,12 +31,12 @@
|
|||
num_barbarian_villages: 1180
|
||||
num_bonus_villages: 512
|
||||
created_at: 2022-03-19T12:00:54.000Z
|
||||
player_data_updated_at: 2022-03-19T12:00:54.000Z
|
||||
player_data_synced_at: 2022-03-19T12:00:54.000Z
|
||||
player_snapshots_created_at: 2022-03-19T12:00:54.000Z
|
||||
tribe_data_updated_at: 2022-03-19T12:00:54.000Z
|
||||
tribe_data_synced_at: 2022-03-19T12:00:54.000Z
|
||||
tribe_snapshots_created_at: 2022-03-19T12:00:54.000Z
|
||||
village_data_updated_at: 2022-03-19T12:00:54.000Z
|
||||
ennoblement_data_updated_at: 2022-03-19T12:00:54.000Z
|
||||
village_data_synced_at: 2022-03-19T12:00:54.000Z
|
||||
ennoblement_data_synced_at: 2022-03-19T12:00:54.000Z
|
||||
version_code: de
|
||||
- _id: en113
|
||||
key: en113
|
||||
|
@ -50,12 +50,12 @@
|
|||
num_barbarian_villages: 700
|
||||
num_bonus_villages: 1024
|
||||
created_at: 2021-04-02T16:01:25.000Z
|
||||
player_data_updated_at: 2021-04-02T16:01:25.000Z
|
||||
player_data_synced_at: 2021-04-02T16:01:25.000Z
|
||||
player_snapshots_created_at: 2021-04-02T16:01:25.000Z
|
||||
tribe_data_updated_at: 2021-04-02T16:01:25.000Z
|
||||
tribe_data_synced_at: 2021-04-02T16:01:25.000Z
|
||||
tribe_snapshots_created_at: 2021-04-02T16:01:25.000Z
|
||||
village_data_updated_at: 2021-04-02T16:01:25.000Z
|
||||
ennoblement_data_updated_at: 2021-04-02T16:01:25.000Z
|
||||
village_data_synced_at: 2021-04-02T16:01:25.000Z
|
||||
ennoblement_data_synced_at: 2021-04-02T16:01:25.000Z
|
||||
version_code: en
|
||||
- _id: it70
|
||||
key: it70
|
||||
|
@ -69,12 +69,12 @@
|
|||
num_barbarian_villages: 1682
|
||||
num_bonus_villages: 256
|
||||
created_at: 2022-03-19T12:00:04.000Z
|
||||
player_data_updated_at: 2022-03-19T12:00:04.000Z
|
||||
player_data_synced_at: 2022-03-19T12:00:04.000Z
|
||||
player_snapshots_created_at: 2022-03-19T12:00:04.000Z
|
||||
tribe_data_updated_at: 2022-03-19T12:00:04.000Z
|
||||
tribe_data_synced_at: 2022-03-19T12:00:04.000Z
|
||||
tribe_snapshots_created_at: 2022-03-19T12:00:04.000Z
|
||||
village_data_updated_at: 2022-03-19T12:00:04.000Z
|
||||
ennoblement_data_updated_at: 2022-03-19T12:00:04.000Z
|
||||
village_data_synced_at: 2022-03-19T12:00:04.000Z
|
||||
ennoblement_data_synced_at: 2022-03-19T12:00:04.000Z
|
||||
version_code: it
|
||||
- _id: pl169
|
||||
key: pl169
|
||||
|
@ -88,12 +88,12 @@
|
|||
num_barbarian_villages: 1574
|
||||
num_bonus_villages: 2048
|
||||
created_at: 2022-03-19T12:01:39.000Z
|
||||
player_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
player_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
player_snapshots_created_at: 2022-03-19T12:01:39.000Z
|
||||
tribe_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
tribe_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
tribe_snapshots_created_at: 2022-03-19T12:01:39.000Z
|
||||
village_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
ennoblement_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
village_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
ennoblement_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
version_code: pl
|
||||
- model: Tribe
|
||||
rows:
|
||||
|
|
|
@ -36,12 +36,12 @@
|
|||
num_bonus_villages: 13379
|
||||
created_at:
|
||||
version_code: pl
|
||||
player_data_updated_at: "{{ now }}"
|
||||
player_data_synced_at: "{{ now }}"
|
||||
player_snapshots_created_at: "{{ now }}"
|
||||
tribe_data_updated_at: "{{ now }}"
|
||||
tribe_data_synced_at: "{{ now }}"
|
||||
tribe_snapshots_created_at: "{{ now }}"
|
||||
village_data_updated_at: "{{ now }}"
|
||||
ennoblement_data_updated_at: "{{ now }}"
|
||||
village_data_synced_at: "{{ now }}"
|
||||
ennoblement_data_synced_at: "{{ now }}"
|
||||
- model: Ennoblement
|
||||
rows:
|
||||
# pl181
|
||||
|
|
|
@ -12,12 +12,12 @@
|
|||
num_barbarian_villages: 1574
|
||||
num_bonus_villages: 2048
|
||||
created_at: 2022-03-19T12:01:39.000Z
|
||||
player_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
player_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
player_snapshots_created_at: 2022-03-19T12:01:39.000Z
|
||||
tribe_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
tribe_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
tribe_snapshots_created_at: 2022-03-19T12:01:39.000Z
|
||||
village_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
ennoblement_data_updated_at: 2022-03-19T12:01:39.000Z
|
||||
village_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
ennoblement_data_synced_at: 2022-03-19T12:01:39.000Z
|
||||
version_code: pl
|
||||
- model: Tribe
|
||||
rows:
|
||||
|
|
Loading…
Reference in New Issue