Migration tool for Datahike from and to other databases.
Make sure your source and target databases exist. You can run the migration on the commandline using clojure CLI:
clj -M:run-m -s datomic-cloud.edn -t datahike-file.edn
Use clj -M:run-m -h
for further instructions. See the *-example.edn
files for dataomic-cloud
, datahike-file
or nippy
example configurations.
Alternatively open your Clojure project, add io.lambdaforge/wanderung
to your dependencies, and start a REPL:
(require '[wanderung.core :as w])
(def datomic-cfg {:wanderung/type :datomic
:name "your-database"
:server-type :ion
:region "eu-west-1"
:system "your-system"
:endpoint "http://entry.your-system.eu-west-1.datomic.net:8182/"
:proxy-port 8182})
(def datahike-cfg {:wanderung/type :datahike
:store {:backend :file
:path "/your-data-path"}
:name "from-datomic"
:schema-flexibility :write
:keep-history? true})
;; if the database doesn't exist, wanderung will create a Datahike database
(w/migrate datomic-cfg datahike-cfg)
You can use clj -T:build jar
to create a jar file and clj -T:build install
to install the library in your local maven repository.
Take a look at build.clj
for further commands.
If you have Clojure CLI tools installed you can install wanderung
locally and use it as a commandline tool.
Install it with:
clj -Ttools install io.lambdaforge/wanderung '{:git/url "https://github.com/lambdaforge/wanderung" :git/tag "v0.2.67"}' :as wanderung
Make sure it is installed with:
clj -Ttools list
Run it with:
clj -Twanderung migration :source '"./source-cfg.edn"' :target '"./target-cfg.edn"'
or with environment variables either inside :source
and :target
with your own naming:
MY_SOURCE_CFG=./source-cfg.edn
MY_TARGET_CFG=./target-cfg.edn
clj -Twanderung m :source 'MY_SOURCE_CFG' :target 'MY_TARGET_CFG'
or with global environment variables defined by wanderung:
WANDERUNG_SOURCE=./source-cfg.edn WANDERUNG_TARGET=./target-cfg.edn clj -Twanderung migrate
Show help with:
clj -Twanderung help
Uninstall it with:
clj -Ttools remove :tool wanderung
Before using Wanderung for performing a migration, you may wish to run tests that to check that Wanderung works correctly. In order to do so, you need to perform the following steps:
clj -T:build test
. With clj -T:build clean
you can clean up your local build files.Starting from version 0.2.0
wanderung does not support leiningen as build tool anymore. Please adjust accordingly in your project when using wanderung from the commandline.
Copyright © 2020-2022 lambdaforge UG (haftungsbeschränkt) & Contributors
This program and the accompanying materials are made available under the terms of the Eclipse Public License 2.0 which is available at http://www.eclipse.org/legal/epl-2.0.
This Source Code may also be made available under the following Secondary Licenses when the conditions for such availability set forth in the Eclipse Public License, v. 2.0 are satisfied: GNU General Public License as published by the Free Software Foundation, either version 2 of the License, or (at your option) any later version, with the GNU Classpath Exception which is available at https://www.gnu.org/software/classpath/license.html.
Can you improve this documentation? These fine people already did:
Konrad Kühne & Jonas ÖstlundEdit on GitHub
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close