Bump opium, add dbmate

This commit is contained in:
Paul Brinkmeier 2025-07-28 18:52:14 +02:00
parent 0d1919ceb2
commit a24f9bcde1
5 changed files with 158 additions and 4 deletions

View File

@ -0,0 +1,5 @@
-- migrate:up
CREATE SCHEMA yore;
-- migrate:down
DROP SCHEMA yore;

View File

@ -0,0 +1,15 @@
-- migrate:up
CREATE TABLE yore.day_index (
id bigint GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
day date NOT NULL UNIQUE
);
CREATE TABLE yore.day_file (
id bigint GENERATED ALWAYS AS IDENTITY PRIMARY KEY,
day_id bigint REFERENCES yore.day_index(id),
relative_path text NOT NULL
);
-- migrate:down
DROP TABLE yore.day_file;
DROP TABLE yore.day_index;

133
db/schema.sql Normal file
View File

@ -0,0 +1,133 @@
SET statement_timeout = 0;
SET lock_timeout = 0;
SET idle_in_transaction_session_timeout = 0;
SET transaction_timeout = 0;
SET client_encoding = 'UTF8';
SET standard_conforming_strings = on;
SELECT pg_catalog.set_config('search_path', '', false);
SET check_function_bodies = false;
SET xmloption = content;
SET client_min_messages = warning;
SET row_security = off;
--
-- Name: yore; Type: SCHEMA; Schema: -; Owner: -
--
CREATE SCHEMA yore;
SET default_tablespace = '';
SET default_table_access_method = heap;
--
-- Name: schema_migrations; Type: TABLE; Schema: public; Owner: -
--
CREATE TABLE public.schema_migrations (
version character varying NOT NULL
);
--
-- Name: day_file; Type: TABLE; Schema: yore; Owner: -
--
CREATE TABLE yore.day_file (
id bigint NOT NULL,
day_id bigint,
relative_path text NOT NULL
);
--
-- Name: day_file_id_seq; Type: SEQUENCE; Schema: yore; Owner: -
--
ALTER TABLE yore.day_file ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY (
SEQUENCE NAME yore.day_file_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1
);
--
-- Name: day_index; Type: TABLE; Schema: yore; Owner: -
--
CREATE TABLE yore.day_index (
id bigint NOT NULL,
day date NOT NULL
);
--
-- Name: day_index_id_seq; Type: SEQUENCE; Schema: yore; Owner: -
--
ALTER TABLE yore.day_index ALTER COLUMN id ADD GENERATED ALWAYS AS IDENTITY (
SEQUENCE NAME yore.day_index_id_seq
START WITH 1
INCREMENT BY 1
NO MINVALUE
NO MAXVALUE
CACHE 1
);
--
-- Name: schema_migrations schema_migrations_pkey; Type: CONSTRAINT; Schema: public; Owner: -
--
ALTER TABLE ONLY public.schema_migrations
ADD CONSTRAINT schema_migrations_pkey PRIMARY KEY (version);
--
-- Name: day_file day_file_pkey; Type: CONSTRAINT; Schema: yore; Owner: -
--
ALTER TABLE ONLY yore.day_file
ADD CONSTRAINT day_file_pkey PRIMARY KEY (id);
--
-- Name: day_index day_index_day_key; Type: CONSTRAINT; Schema: yore; Owner: -
--
ALTER TABLE ONLY yore.day_index
ADD CONSTRAINT day_index_day_key UNIQUE (day);
--
-- Name: day_index day_index_pkey; Type: CONSTRAINT; Schema: yore; Owner: -
--
ALTER TABLE ONLY yore.day_index
ADD CONSTRAINT day_index_pkey PRIMARY KEY (id);
--
-- Name: day_file day_file_day_id_fkey; Type: FK CONSTRAINT; Schema: yore; Owner: -
--
ALTER TABLE ONLY yore.day_file
ADD CONSTRAINT day_file_day_id_fkey FOREIGN KEY (day_id) REFERENCES yore.day_index(id);
--
-- PostgreSQL database dump complete
--
--
-- Dbmate schema migrations
--
INSERT INTO public.schema_migrations (version) VALUES
('20250728054639'),
('20250728060412');

8
flake.lock generated
View File

@ -64,11 +64,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1752972533, "lastModified": 1753685821,
"narHash": "sha256-jhVfZK05aRtQ6FqLfLrhpGk8bRAkpXXXxVx4DhJgQVY=", "narHash": "sha256-X6YaJuZHcZKCytmMnTj2lLPGGwhypU6YPfUdbGB/px4=",
"ref": "main", "ref": "main",
"rev": "b39da29d139763f41bffcc8c4c175e472d672f45", "rev": "9e9e0204bb4c84915c2133d6fc9d9028a24b0e81",
"revCount": 61, "revCount": 62,
"type": "git", "type": "git",
"url": "https://git.pbrinkmeier.de/paul/opium" "url": "https://git.pbrinkmeier.de/paul/opium"
}, },

View File

@ -74,6 +74,7 @@
pkgs.haskellPackages.implicit-hie pkgs.haskellPackages.implicit-hie
pkgs.haskell-language-server pkgs.haskell-language-server
pkgs.postgresql pkgs.postgresql
pkgs.dbmate
]; ];
overrides = addOpium; overrides = addOpium;
}).env; }).env;