Remove v2/v3 migration project
This commit is contained in:
parent
997279783f
commit
babc77bbd0
|
@ -1,22 +0,0 @@
|
||||||
<Project Sdk="Microsoft.NET.Sdk">
|
|
||||||
|
|
||||||
<PropertyGroup>
|
|
||||||
<OutputType>Exe</OutputType>
|
|
||||||
<TargetFramework>net6.0</TargetFramework>
|
|
||||||
</PropertyGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<Compile Include="Program.fs" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<PackageReference Include="FSharp.Data" Version="4.2.3" />
|
|
||||||
<PackageReference Include="LiteDB" Version="5.0.11" />
|
|
||||||
<PackageReference Include="NodaTime" Version="3.0.9" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
<ItemGroup>
|
|
||||||
<ProjectReference Include="..\MyPrayerJournal\MyPrayerJournal.fsproj" />
|
|
||||||
</ItemGroup>
|
|
||||||
|
|
||||||
</Project>
|
|
|
@ -1,57 +0,0 @@
|
||||||
open FSharp.Data
|
|
||||||
open FSharp.Data.CsvExtensions
|
|
||||||
open LiteDB
|
|
||||||
open MyPrayerJournal.Domain
|
|
||||||
open NodaTime
|
|
||||||
|
|
||||||
module Subdocs =
|
|
||||||
|
|
||||||
open FSharp.Data.JsonExtensions
|
|
||||||
|
|
||||||
let history json =
|
|
||||||
match JsonValue.Parse json with
|
|
||||||
| JsonValue.Array hist ->
|
|
||||||
hist
|
|
||||||
|> Array.map (fun h ->
|
|
||||||
{ asOf = (h?asOf.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
|
||||||
status = h?status.AsString () |> RequestAction.ofString
|
|
||||||
text = match h?text.AsString () with "" -> None | txt -> Some txt
|
|
||||||
})
|
|
||||||
|> List.ofArray
|
|
||||||
| _ -> []
|
|
||||||
|
|
||||||
let notes json =
|
|
||||||
match JsonValue.Parse json with
|
|
||||||
| JsonValue.Array notes ->
|
|
||||||
notes
|
|
||||||
|> Array.map (fun n ->
|
|
||||||
{ asOf = (n?asOf.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
|
||||||
notes = n?notes.AsString ()
|
|
||||||
})
|
|
||||||
|> List.ofArray
|
|
||||||
| _ -> []
|
|
||||||
|
|
||||||
let oldData = CsvFile.Load("data.csv")
|
|
||||||
|
|
||||||
let db = new LiteDatabase("Filename=./mpj.db")
|
|
||||||
|
|
||||||
MyPrayerJournal.Data.Startup.ensureDb db
|
|
||||||
|
|
||||||
let migrated =
|
|
||||||
oldData.Rows
|
|
||||||
|> Seq.map (fun r ->
|
|
||||||
{ id = r["@id"].Replace ("Requests/", "") |> RequestId.ofString
|
|
||||||
enteredOn = (r?enteredOn.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
|
||||||
userId = UserId r?userId
|
|
||||||
snoozedUntil = (r?snoozedUntil.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
|
||||||
showAfter = (r?showAfter.AsInteger64 >> Instant.FromUnixTimeMilliseconds) ()
|
|
||||||
recurType = r?recurType |> Recurrence.ofString
|
|
||||||
recurCount = (r?recurCount.AsInteger >> int16) ()
|
|
||||||
history = Subdocs.history r?history
|
|
||||||
notes = Subdocs.notes r?notes
|
|
||||||
})
|
|
||||||
|> db.GetCollection<Request>("request").Insert
|
|
||||||
|
|
||||||
db.Checkpoint ()
|
|
||||||
|
|
||||||
printfn $"Migrated {migrated} requests"
|
|
Loading…
Reference in New Issue
Block a user