mirror of
https://github.com/alanorth/cgspace-notes.git
synced 2024-12-22 13:12:19 +01:00
Update notes for 2021-04-26
This commit is contained in:
parent
a6476d3748
commit
24e5907937
@ -747,4 +747,154 @@ $ chrt -b 0 dspace dsrun com.atmire.statistics.util.update.atomic.AtomicStatisti
|
||||
- I'm not sure if that means that it worked? I sent feedback to Atmire
|
||||
- Meeting with Moayad to discuss OpenRXV development progress
|
||||
|
||||
## 2021-04-25
|
||||
|
||||
- The indexes on AReS are messed up again
|
||||
- I made a backup of the indexes, then deleted the `openrxv-items-final` and `openrxv-items-temp` indexes, re-created the `openrxv-items` alias, and restored the data into `openrxv-items`:
|
||||
|
||||
```console
|
||||
$ elasticdump --input=http://localhost:9200/openrxv-items --output=/home/aorth/openrxv-items_mapping.json --type=mapping
|
||||
$ elasticdump --input=http://localhost:9200/openrxv-items --output=/home/aorth/openrxv-items_data.json --limit=1000 --type=data
|
||||
$ curl -XDELETE 'http://localhost:9200/openrxv-items-temp'
|
||||
$ curl -XDELETE 'http://localhost:9200/openrxv-items-final'
|
||||
$ elasticdump --input=/home/aorth/openrxv-items_mapping.json --output=http://localhost:9200/openrxv-items-final --type=mapping
|
||||
$ curl -s -X POST 'http://localhost:9200/_aliases' -H 'Content-Type: application/json' -d'{"actions" : [{"add" : { "index" : "openrxv-items-final", "alias" : "openrxv-items"}}]}'
|
||||
$ elasticdump --input=/home/aorth/openrxv-items_data.json --output=http://localhost:9200/openrxv-items --limit 1000 --type=data
|
||||
```
|
||||
|
||||
- Then I started a fresh AReS harvest
|
||||
|
||||
## 2021-04-26
|
||||
|
||||
- The AReS harvest last night seems to have finished successfully and the number of items looks good:
|
||||
|
||||
```console
|
||||
$ curl -s http://localhost:9200/_cat/indices | grep openrxv-items
|
||||
yellow open openrxv-items-temp H-CGsyyLTaqAj6-nKXZ-7w 1 1 0 0 283b 283b
|
||||
yellow open openrxv-items-final ul3SKsa7Q9Cd_K7qokBY_w 1 1 103951 0 254mb 254mb
|
||||
```
|
||||
|
||||
- And the aliases seem correct for once:
|
||||
|
||||
```console
|
||||
$ curl -s 'http://localhost:9200/_alias/' | python -m json.tool
|
||||
...
|
||||
"openrxv-items-final": {
|
||||
"aliases": {
|
||||
"openrxv-items": {}
|
||||
}
|
||||
},
|
||||
"openrxv-items-temp": {
|
||||
"aliases": {}
|
||||
},
|
||||
...
|
||||
```
|
||||
|
||||
- That's 250 new items in the index since the last harvest!
|
||||
- Re-create my local Artifactory container because I'm getting errors starting it and it has been a few months since it was updated:
|
||||
|
||||
```console
|
||||
$ podman rm artifactory
|
||||
$ podman pull docker.bintray.io/jfrog/artifactory-oss:latest
|
||||
$ podman create --ulimit nofile=32000:32000 --name artifactory -v artifactory_data:/var/opt/jfrog/artifactory -p 8081-8082:8081-8082 docker.bintray.io/jfrog/artifactory-oss
|
||||
$ podman start artifactory
|
||||
```
|
||||
|
||||
- Start testing DSpace 7.0 Beta 5 so I can evaluate if it solves some of the problems we are having on DSpace 6, and if it's missing things like multiple handle resolvers, etc
|
||||
- I see it needs Java JDK 11, Tomcat 9, Solr 8, and PostgreSQL 11
|
||||
- Also, according to the [installation notes](https://wiki.lyrasis.org/display/DSDOC7x/Installing+DSpace) I see you can install the old DSpace 6 REST API, so that's potentially useful for us
|
||||
- I see that all web applications on the backend are now rolled into just one "server" application
|
||||
- The build process took 11 minutes the first time (due to downloading the world with Maven) and ~2 minutes the second time
|
||||
- The `local.cfg` content and syntax is very similar DSpace 6
|
||||
- I got the basic `fresh_install` up and running
|
||||
- Then I tried to import a DSpace 6 database from production
|
||||
- I tried to delete all the Atmire SQL migrations:
|
||||
|
||||
```console
|
||||
localhost/dspace7b5= > DELETE FROM schema_version WHERE description LIKE '%Atmire%' OR description LIKE '%CUA%' OR description LIKE '%cua%';
|
||||
```
|
||||
|
||||
- But I got an error when running `dspace database migrate`:
|
||||
|
||||
```console
|
||||
$ ~/dspace7b5/bin/dspace database migrate
|
||||
|
||||
Database URL: jdbc:postgresql://localhost:5432/dspace7b5
|
||||
Migrating database to latest version... (Check dspace logs for details)
|
||||
Migration exception:
|
||||
java.sql.SQLException: Flyway migration error occurred
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:738)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:632)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.main(DatabaseUtils.java:228)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.dspace.app.launcher.ScriptLauncher.runOneCommand(ScriptLauncher.java:273)
|
||||
at org.dspace.app.launcher.ScriptLauncher.handleScript(ScriptLauncher.java:129)
|
||||
at org.dspace.app.launcher.ScriptLauncher.main(ScriptLauncher.java:94)
|
||||
Caused by: org.flywaydb.core.api.FlywayException: Validate failed:
|
||||
Detected applied migration not resolved locally: 5.0.2017.09.25
|
||||
Detected applied migration not resolved locally: 6.0.2017.01.30
|
||||
Detected applied migration not resolved locally: 6.0.2017.09.25
|
||||
|
||||
at org.flywaydb.core.Flyway.doValidate(Flyway.java:292)
|
||||
at org.flywaydb.core.Flyway.access$100(Flyway.java:73)
|
||||
at org.flywaydb.core.Flyway$1.execute(Flyway.java:166)
|
||||
at org.flywaydb.core.Flyway$1.execute(Flyway.java:158)
|
||||
at org.flywaydb.core.Flyway.execute(Flyway.java:527)
|
||||
at org.flywaydb.core.Flyway.migrate(Flyway.java:158)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:729)
|
||||
... 9 more
|
||||
```
|
||||
|
||||
- I deleted those migrations:
|
||||
|
||||
```console
|
||||
localhost/dspace7b5= > DELETE FROM schema_version WHERE version IN ('5.0.2017.09.25', '6.0.2017.01.30', '6.0.2017.09.25');
|
||||
```
|
||||
|
||||
- Then when I ran the migration again it failed for a new reason, related to the configurable workflow:
|
||||
|
||||
```console
|
||||
Database URL: jdbc:postgresql://localhost:5432/dspace7b5
|
||||
Migrating database to latest version... (Check dspace logs for details)
|
||||
Migration exception:
|
||||
java.sql.SQLException: Flyway migration error occurred
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:738)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:632)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.main(DatabaseUtils.java:228)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.dspace.app.launcher.ScriptLauncher.runOneCommand(ScriptLauncher.java:273)
|
||||
at org.dspace.app.launcher.ScriptLauncher.handleScript(ScriptLauncher.java:129)
|
||||
at org.dspace.app.launcher.ScriptLauncher.main(ScriptLauncher.java:94)
|
||||
Caused by: org.flywaydb.core.internal.command.DbMigrate$FlywayMigrateException:
|
||||
Migration V7.0_2019.05.02__DS-4239-workflow-xml-migration.sql failed
|
||||
--------------------------------------------------------------------
|
||||
SQL State : 42P01
|
||||
Error Code : 0
|
||||
Message : ERROR: relation "cwf_pooltask" does not exist
|
||||
Position: 8
|
||||
Location : org/dspace/storage/rdbms/sqlmigration/postgres/V7.0_2019.05.02__DS-4239-workflow-xml-migration.sql (/home/aorth/src/apache-tomcat-9.0.45/file:/home/aorth/dspace7b5/lib/dspace-api-7.0-beta5.jar!/org/dspace/storage/rdbms/sqlmigration/postgres/V7.0_2019.05.02__DS-4239-workflow-xml-migration.sql)
|
||||
Line : 16
|
||||
Statement : UPDATE cwf_pooltask SET workflow_id='defaultWorkflow' WHERE workflow_id='default'
|
||||
...
|
||||
```
|
||||
|
||||
- The [DSpace 7 upgrade docs](https://wiki.lyrasis.org/display/DSDOC7x/Upgrading+DSpace) say I need to apply these previously optional migrations:
|
||||
|
||||
```console
|
||||
$ ~/dspace7b5/bin/dspace database migrate ignored
|
||||
```
|
||||
|
||||
- Now I see all migrations have completed and DSpace actually starts up fine!
|
||||
- I will try to do a full re-index to see how long it takes:
|
||||
|
||||
```console
|
||||
$ time ~/dspace7b5/bin/dspace index-discovery -b
|
||||
```
|
||||
|
||||
<!-- vim: set sw=2 ts=2: -->
|
||||
|
@ -24,7 +24,7 @@ Perhaps one of the containers crashed, I should have looked closer but I was in
|
||||
<meta property="og:type" content="article" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/2021-04/" />
|
||||
<meta property="article:published_time" content="2021-04-01T09:50:54+03:00" />
|
||||
<meta property="article:modified_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="article:modified_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
@ -54,9 +54,9 @@ Perhaps one of the containers crashed, I should have looked closer but I was in
|
||||
"@type": "BlogPosting",
|
||||
"headline": "April, 2021",
|
||||
"url": "https://alanorth.github.io/cgspace-notes/2021-04/",
|
||||
"wordCount": "3896",
|
||||
"wordCount": "4547",
|
||||
"datePublished": "2021-04-01T09:50:54+03:00",
|
||||
"dateModified": "2021-04-19T20:11:44+03:00",
|
||||
"dateModified": "2021-04-21T22:53:24+03:00",
|
||||
"author": {
|
||||
"@type": "Person",
|
||||
"name": "Alan Orth"
|
||||
@ -861,7 +861,145 @@ $ chrt -b 0 dspace dsrun com.atmire.statistics.util.update.atomic.AtomicStatisti
|
||||
</li>
|
||||
<li>Meeting with Moayad to discuss OpenRXV development progress</li>
|
||||
</ul>
|
||||
<!-- raw HTML omitted -->
|
||||
<h2 id="2021-04-25">2021-04-25</h2>
|
||||
<ul>
|
||||
<li>The indexes on AReS are messed up again
|
||||
<ul>
|
||||
<li>I made a backup of the indexes, then deleted the <code>openrxv-items-final</code> and <code>openrxv-items-temp</code> indexes, re-created the <code>openrxv-items</code> alias, and restored the data into <code>openrxv-items</code>:</li>
|
||||
</ul>
|
||||
</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">$ elasticdump --input=http://localhost:9200/openrxv-items --output=/home/aorth/openrxv-items_mapping.json --type=mapping
|
||||
$ elasticdump --input=http://localhost:9200/openrxv-items --output=/home/aorth/openrxv-items_data.json --limit=1000 --type=data
|
||||
$ curl -XDELETE 'http://localhost:9200/openrxv-items-temp'
|
||||
$ curl -XDELETE 'http://localhost:9200/openrxv-items-final'
|
||||
$ elasticdump --input=/home/aorth/openrxv-items_mapping.json --output=http://localhost:9200/openrxv-items-final --type=mapping
|
||||
$ curl -s -X POST 'http://localhost:9200/_aliases' -H 'Content-Type: application/json' -d'{"actions" : [{"add" : { "index" : "openrxv-items-final", "alias" : "openrxv-items"}}]}'
|
||||
$ elasticdump --input=/home/aorth/openrxv-items_data.json --output=http://localhost:9200/openrxv-items --limit 1000 --type=data
|
||||
</code></pre><ul>
|
||||
<li>Then I started a fresh AReS harvest</li>
|
||||
</ul>
|
||||
<h2 id="2021-04-26">2021-04-26</h2>
|
||||
<ul>
|
||||
<li>The AReS harvest last night seems to have finished successfully and the number of items looks good:</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">$ curl -s http://localhost:9200/_cat/indices | grep openrxv-items
|
||||
yellow open openrxv-items-temp H-CGsyyLTaqAj6-nKXZ-7w 1 1 0 0 283b 283b
|
||||
yellow open openrxv-items-final ul3SKsa7Q9Cd_K7qokBY_w 1 1 103951 0 254mb 254mb
|
||||
</code></pre><ul>
|
||||
<li>And the aliases seem correct for once:</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">$ curl -s 'http://localhost:9200/_alias/' | python -m json.tool
|
||||
...
|
||||
"openrxv-items-final": {
|
||||
"aliases": {
|
||||
"openrxv-items": {}
|
||||
}
|
||||
},
|
||||
"openrxv-items-temp": {
|
||||
"aliases": {}
|
||||
},
|
||||
...
|
||||
</code></pre><ul>
|
||||
<li>That’s 250 new items in the index since the last harvest!</li>
|
||||
<li>Re-create my local Artifactory container because I’m getting errors starting it and it has been a few months since it was updated:</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">$ podman rm artifactory
|
||||
$ podman pull docker.bintray.io/jfrog/artifactory-oss:latest
|
||||
$ podman create --ulimit nofile=32000:32000 --name artifactory -v artifactory_data:/var/opt/jfrog/artifactory -p 8081-8082:8081-8082 docker.bintray.io/jfrog/artifactory-oss
|
||||
$ podman start artifactory
|
||||
</code></pre><ul>
|
||||
<li>Start testing DSpace 7.0 Beta 5 so I can evaluate if it solves some of the problems we are having on DSpace 6, and if it’s missing things like multiple handle resolvers, etc
|
||||
<ul>
|
||||
<li>I see it needs Java JDK 11, Tomcat 9, Solr 8, and PostgreSQL 11</li>
|
||||
<li>Also, according to the <a href="https://wiki.lyrasis.org/display/DSDOC7x/Installing+DSpace">installation notes</a> I see you can install the old DSpace 6 REST API, so that’s potentially useful for us</li>
|
||||
<li>I see that all web applications on the backend are now rolled into just one “server” application</li>
|
||||
<li>The build process took 11 minutes the first time (due to downloading the world with Maven) and ~2 minutes the second time</li>
|
||||
<li>The <code>local.cfg</code> content and syntax is very similar DSpace 6</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>I got the basic <code>fresh_install</code> up and running
|
||||
<ul>
|
||||
<li>Then I tried to import a DSpace 6 database from production</li>
|
||||
</ul>
|
||||
</li>
|
||||
<li>I tried to delete all the Atmire SQL migrations:</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">localhost/dspace7b5= > DELETE FROM schema_version WHERE description LIKE '%Atmire%' OR description LIKE '%CUA%' OR description LIKE '%cua%';
|
||||
</code></pre><ul>
|
||||
<li>But I got an error when running <code>dspace database migrate</code>:</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">$ ~/dspace7b5/bin/dspace database migrate
|
||||
|
||||
Database URL: jdbc:postgresql://localhost:5432/dspace7b5
|
||||
Migrating database to latest version... (Check dspace logs for details)
|
||||
Migration exception:
|
||||
java.sql.SQLException: Flyway migration error occurred
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:738)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:632)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.main(DatabaseUtils.java:228)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.dspace.app.launcher.ScriptLauncher.runOneCommand(ScriptLauncher.java:273)
|
||||
at org.dspace.app.launcher.ScriptLauncher.handleScript(ScriptLauncher.java:129)
|
||||
at org.dspace.app.launcher.ScriptLauncher.main(ScriptLauncher.java:94)
|
||||
Caused by: org.flywaydb.core.api.FlywayException: Validate failed:
|
||||
Detected applied migration not resolved locally: 5.0.2017.09.25
|
||||
Detected applied migration not resolved locally: 6.0.2017.01.30
|
||||
Detected applied migration not resolved locally: 6.0.2017.09.25
|
||||
|
||||
at org.flywaydb.core.Flyway.doValidate(Flyway.java:292)
|
||||
at org.flywaydb.core.Flyway.access$100(Flyway.java:73)
|
||||
at org.flywaydb.core.Flyway$1.execute(Flyway.java:166)
|
||||
at org.flywaydb.core.Flyway$1.execute(Flyway.java:158)
|
||||
at org.flywaydb.core.Flyway.execute(Flyway.java:527)
|
||||
at org.flywaydb.core.Flyway.migrate(Flyway.java:158)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:729)
|
||||
... 9 more
|
||||
</code></pre><ul>
|
||||
<li>I deleted those migrations:</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">localhost/dspace7b5= > DELETE FROM schema_version WHERE version IN ('5.0.2017.09.25', '6.0.2017.01.30', '6.0.2017.09.25');
|
||||
</code></pre><ul>
|
||||
<li>Then when I ran the migration again it failed for a new reason, related to the configurable workflow:</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">Database URL: jdbc:postgresql://localhost:5432/dspace7b5
|
||||
Migrating database to latest version... (Check dspace logs for details)
|
||||
Migration exception:
|
||||
java.sql.SQLException: Flyway migration error occurred
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:738)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.updateDatabase(DatabaseUtils.java:632)
|
||||
at org.dspace.storage.rdbms.DatabaseUtils.main(DatabaseUtils.java:228)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
|
||||
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
|
||||
at org.dspace.app.launcher.ScriptLauncher.runOneCommand(ScriptLauncher.java:273)
|
||||
at org.dspace.app.launcher.ScriptLauncher.handleScript(ScriptLauncher.java:129)
|
||||
at org.dspace.app.launcher.ScriptLauncher.main(ScriptLauncher.java:94)
|
||||
Caused by: org.flywaydb.core.internal.command.DbMigrate$FlywayMigrateException:
|
||||
Migration V7.0_2019.05.02__DS-4239-workflow-xml-migration.sql failed
|
||||
--------------------------------------------------------------------
|
||||
SQL State : 42P01
|
||||
Error Code : 0
|
||||
Message : ERROR: relation "cwf_pooltask" does not exist
|
||||
Position: 8
|
||||
Location : org/dspace/storage/rdbms/sqlmigration/postgres/V7.0_2019.05.02__DS-4239-workflow-xml-migration.sql (/home/aorth/src/apache-tomcat-9.0.45/file:/home/aorth/dspace7b5/lib/dspace-api-7.0-beta5.jar!/org/dspace/storage/rdbms/sqlmigration/postgres/V7.0_2019.05.02__DS-4239-workflow-xml-migration.sql)
|
||||
Line : 16
|
||||
Statement : UPDATE cwf_pooltask SET workflow_id='defaultWorkflow' WHERE workflow_id='default'
|
||||
...
|
||||
</code></pre><ul>
|
||||
<li>The <a href="https://wiki.lyrasis.org/display/DSDOC7x/Upgrading+DSpace">DSpace 7 upgrade docs</a> say I need to apply these previously optional migrations:</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">$ ~/dspace7b5/bin/dspace database migrate ignored
|
||||
</code></pre><ul>
|
||||
<li>Now I see all migrations have completed and DSpace actually starts up fine!</li>
|
||||
<li>I will try to do a full re-index to see how long it takes:</li>
|
||||
</ul>
|
||||
<pre><code class="language-console" data-lang="console">$ time ~/dspace7b5/bin/dspace index-discovery -b
|
||||
</code></pre><!-- raw HTML omitted -->
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/categories/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/categories/notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/categories/notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/categories/notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/categories/notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/categories/notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/posts/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/posts/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/posts/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/posts/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/posts/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/posts/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -10,7 +10,7 @@
|
||||
<meta property="og:description" content="Documenting day-to-day work on the [CGSpace](https://cgspace.cgiar.org) repository." />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:url" content="https://alanorth.github.io/cgspace-notes/posts/" />
|
||||
<meta property="og:updated_time" content="2021-04-19T20:11:44+03:00" />
|
||||
<meta property="og:updated_time" content="2021-04-21T22:53:24+03:00" />
|
||||
|
||||
|
||||
|
||||
|
@ -3,19 +3,19 @@
|
||||
xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
||||
<url>
|
||||
<loc>https://alanorth.github.io/cgspace-notes/2021-04/</loc>
|
||||
<lastmod>2021-04-19T20:11:44+03:00</lastmod>
|
||||
<lastmod>2021-04-21T22:53:24+03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://alanorth.github.io/cgspace-notes/categories/</loc>
|
||||
<lastmod>2021-04-19T20:11:44+03:00</lastmod>
|
||||
<lastmod>2021-04-21T22:53:24+03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://alanorth.github.io/cgspace-notes/</loc>
|
||||
<lastmod>2021-04-19T20:11:44+03:00</lastmod>
|
||||
<lastmod>2021-04-21T22:53:24+03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://alanorth.github.io/cgspace-notes/categories/notes/</loc>
|
||||
<lastmod>2021-04-19T20:11:44+03:00</lastmod>
|
||||
<lastmod>2021-04-21T22:53:24+03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://alanorth.github.io/cgspace-notes/posts/</loc>
|
||||
<lastmod>2021-04-19T20:11:44+03:00</lastmod>
|
||||
<lastmod>2021-04-21T22:53:24+03:00</lastmod>
|
||||
</url><url>
|
||||
<loc>https://alanorth.github.io/cgspace-notes/2021-03/</loc>
|
||||
<lastmod>2021-04-13T21:13:08+03:00</lastmod>
|
||||
|
Loading…
Reference in New Issue
Block a user