[Ole Aamot]
Thomas, finnes det en Nikita HATEOAS-installasjon på OsloMet, eller bør jeg begynne å risse API-endepunktene i runer?
OsloMet har en nikita instans, men den er dessverre kun tilgjengelig dersom man er på campus eller koblet til OsloMet sitt nettverk med VPN. Jeg har lyst til å ha en versjon kjørende på nett slik at folk lett kan se hvordan det fungerer, men den kostnaden har jeg ikke tatt.
Thomas ________________________________ Fra: ole@aamot.software ole@aamot.software Sendt: onsdag 29. januar 2025 05:46 Til: Petter Reinholdtsen pere@hungry.com Kopi: nikita-noark@nuug.no nikita-noark@nuug.no Emne: Sludderbot-genererte script for å opprette bruker i PostgreSQL (Re: Oppretting av bruker direkte mot PostgreSQL)
Hei Petter og Thomas,
Jeg føler meg som Indiana Jones i en PostgreSQL-templerun, der jeg febrilsk prøver å unnslippe rullende FATAL: Ident authentication failed-kuler. Etter mange tapre forsøk på å opprette Aamot Innovation som en respektabel organisasjon i Nikita-universet, har jeg nådd følgende konklusjoner:
1. PGHOST må justeres – localhost er kanskje hjemmekoselig, men ikke alltid tilgjengelig. (Tydeligvis har PostgreSQL bygget en usynlig mur rundt seg selv.) 2. AdministrativEnhet er en viktig eksistensiell dimensjon – uten den er man som en ensom astronaut uten romdrakt. 3. Feilmeldinger er poetiske – "FATAL: Ident authentication failed for user 'nikita_noark5_test_user'" er omtrent som en Shakespeare-sonett for databaseadministratorer.
Så, et par spørsmål til dere helter:
* Petter, tilbyr du en offisiell Nikita DB-installasjon på UiO for testing? Eller må jeg fremdeles kommunisere med localhost via åndemaning? * Thomas, finnes det en Nikita HATEOAS-installasjon på OsloMet, eller bør jeg begynne å risse API-endepunktene i runer?
Jeg setter pris på all hjelp før jeg går over til plan B: å skrive ut alle skriptene på papir og sende dem med brevduer til PostgreSQL-hovedkvarteret.
Installasjon av PostgreSQL på localhost under Fedora Core 42, Ubuntu og trolig også Debian:
$ sudo dnf install postgresql-server
$ sudo /usr/bin/postgresql-setup --initdb
$ sudo service postgresql start
$ sudo service postgresql status
$ sudo su - postgres
$ createuser nikita_noark5_test_user
$ ./nikita-create-org-psql.sh "Aamot Innovation" Oppretter organisasjon: 'Aamot Innovation'... psql: error: connection to server at "localhost" (::1), port 5432 failed: FATAL: Ident authentication failed for user "nikita_noark5_test_user" ./nikita-create-org-psql.sh: line 26: [: : integer expression expected psql: error: connection to server at "localhost" (::1), port 5432 failed: FATAL: Ident authentication failed for user "nikita_noark5_test_user" Organisasjonen 'Aamot Innovation' ble opprettet med UUID 4de60aa4-2c69-4d7d-be03-7049ce1978d7.
$ ./nikita-create-adm-unit-psql.sh "aamot.io" "Aamot Innovation" Oppretter administrativ enhet: 'aamot.io' i organisasjon 'Aamot Innovation'...
$ ./nikita-create-user-psql.sh ole Ole Aamot "Aamot Innovation" "aamot.io" "ARCHIVIST" Oppretter bruker: ole (Ole Aamot) i organisasjon 'Aamot Innovation' og adm. enhet 'aamot.io'... psql: error: connection to server at "localhost" (::1), port 5432 failed: FATAL: Ident authentication failed for user "nikita_noark5_test_user" Feil: Organisasjonen 'Aamot Innovation' finnes ikke!
Jeg vil også lage scripts/nikita-create-adm-unit-psql og scripts/nikita-create-org-psql for å kunne starte med blanke ark, men det kommer senere.
Her er en fullstendig løsning med tre sludderbot-script:
nikita-create-org-psql.sh – Oppretter en organisasjon. nikita-create-adm-unit-psql.sh – Oppretter en administrativ enhet. nikita-create-user-psql.sh – Oppretter en bruker og kobler den til en organisasjon og en administrativ enhet.
1. nikita-create-org-psql.sh (Oppretter en organisasjon)
$ ./nikita-create-org-psql.sh "My Organisation"
2. nikita-create-adm-unit-psql.sh (Oppretter en administrativ enhet)
$ ./nikita-create-adm-unit-psql.sh "My Admin Unit" "My Organisation"
3. nikita-create-user-psql.sh (Oppretter en bruker)
$ ./nikita-create-user-psql.sh testbruker "Test" "Bruker" "My Organisation" "My Admin Unit" "ARCHIVIST"
Dette gir en fullstendig løsning der hver del kan brukes separat eller sammen!
Hva tenker Dere om denne sludderbotløsningen, Thomas og Petter?
Mvh, Ole Aamot (Ambisiøs, men mildt frustrert Nikita-eventyrer)