Skip to content
This repository was archived by the owner on Nov 24, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).
- [#6780](https://github.com/apache/trafficcontrol/issues/6780) Fixed t3c to use secondary parents when there are no primary parents available.
- Correction where using the placeholder __HOSTNAME__ in "unknown" files (others than the defaults ones), was being replaced by the full FQDN instead of the shot hostname.
- [#6800](https://github.com/apache/trafficcontrol/issues/6800) Fixed incorrect error message for `/server/details` associated with query parameters.
- [#6712](https://github.com/apache/trafficcontrol/issues/6712) - Fixed error when loading the Traffic Vault schema from `create_tables.sql` more than once.

### Removed
- Remove traffic\_portal dependencies to mitigate `npm audit` issues, specifically `grunt-concurrent`, `grunt-contrib-concat`, `grunt-contrib-cssmin`, `grunt-contrib-jsmin`, `grunt-contrib-uglify`, `grunt-contrib-htmlmin`, `grunt-newer`, and `grunt-wiredep`
Expand Down
112 changes: 64 additions & 48 deletions traffic_ops/app/db/trafficvault/create_tables.sql
Original file line number Diff line number Diff line change
Expand Up @@ -110,86 +110,102 @@ CREATE TABLE IF NOT EXISTS url_sig_key (

ALTER TABLE url_sig_key OWNER TO traffic_vault;

--
-- Name: dnssec dnssec_pkey; Type: CONSTRAINT; Schema: public; Owner: traffic_vault
--
DO $$ BEGIN
IF NOT EXISTS (SELECT FROM information_schema.table_constraints WHERE constraint_name = 'dnssec_pkey' AND table_name = 'dnssec') THEN
--
-- Name: dnssec dnssec_pkey; Type: CONSTRAINT; Schema: public; Owner: traffic_vault
--

ALTER TABLE ONLY dnssec
ADD CONSTRAINT dnssec_pkey PRIMARY KEY (cdn);
ALTER TABLE ONLY dnssec
ADD CONSTRAINT dnssec_pkey PRIMARY KEY (cdn);
END IF;


--
-- Name: sslkey sslkey_pkey; Type: CONSTRAINT; Schema: public; Owner: traffic_vault
--
IF NOT EXISTS (SELECT FROM information_schema.table_constraints WHERE constraint_name = 'sslkey_pkey' AND table_name = 'sslkey') THEN
--
-- Name: sslkey sslkey_pkey; Type: CONSTRAINT; Schema: public; Owner: traffic_vault
--

ALTER TABLE ONLY sslkey
ADD CONSTRAINT sslkey_pkey PRIMARY KEY (deliveryservice, cdn, version);
ALTER TABLE ONLY sslkey
ADD CONSTRAINT sslkey_pkey PRIMARY KEY (deliveryservice, cdn, version);
END IF;

IF NOT EXISTS (SELECT FROM information_schema.table_constraints WHERE constraint_name = 'uri_signing_key_pkey' AND table_name = 'uri_signing_key') THEN
--
-- Name: uri_signing_key uri_signing_key_pkey; Type: CONSTRAINT; Schema: public; Owner: traffic_vault
--

--
-- Name: uri_signing_key uri_signing_key_pkey; Type: CONSTRAINT; Schema: public; Owner: traffic_vault
--

ALTER TABLE ONLY uri_signing_key
ADD CONSTRAINT uri_signing_key_pkey PRIMARY KEY (deliveryservice);
ALTER TABLE ONLY uri_signing_key
ADD CONSTRAINT uri_signing_key_pkey PRIMARY KEY (deliveryservice);
END IF;

IF NOT EXISTS (SELECT FROM information_schema.table_constraints WHERE constraint_name = 'url_sig_key_pkey' AND table_name = 'url_sig_key') THEN
--
-- Name: url_sig_key url_sig_key_pkey; Type: CONSTRAINT; Schema: public; Owner: traffic_vault
--

--
-- Name: url_sig_key url_sig_key_pkey; Type: CONSTRAINT; Schema: public; Owner: traffic_vault
--

ALTER TABLE ONLY url_sig_key
ADD CONSTRAINT url_sig_key_pkey PRIMARY KEY (deliveryservice);


--
-- Name: sslkey_cdn_idx; Type: INDEX; Schema: public; Owner: traffic_vault
--
ALTER TABLE ONLY url_sig_key
ADD CONSTRAINT url_sig_key_pkey PRIMARY KEY (deliveryservice);
END IF;

CREATE INDEX sslkey_cdn_idx ON sslkey USING btree (cdn);
IF EXISTS (SELECT FROM information_schema.columns WHERE table_name = 'sslkey' AND column_name = 'cdn') THEN
--
-- Name: sslkey_cdn_idx; Type: INDEX; Schema: public; Owner: traffic_vault
--

CREATE INDEX IF NOT EXISTS sslkey_cdn_idx ON sslkey USING btree (cdn);
END IF;

--
-- Name: sslkey_deliveryservice_idx; Type: INDEX; Schema: public; Owner: traffic_vault
--
IF EXISTS (SELECT FROM information_schema.columns WHERE table_name = 'sslkey' AND column_name = 'deliveryservice') THEN
--
-- Name: sslkey_deliveryservice_idx; Type: INDEX; Schema: public; Owner: traffic_vault
--

CREATE INDEX sslkey_deliveryservice_idx ON sslkey USING btree (deliveryservice);
CREATE INDEX IF NOT EXISTS sslkey_deliveryservice_idx ON sslkey USING btree (deliveryservice);
END IF;


--
-- Name: sslkey_version_idx; Type: INDEX; Schema: public; Owner: traffic_vault
--
IF EXISTS (SELECT FROM information_schema.columns WHERE table_name = 'sslkey' AND column_name = 'version') THEN
--
-- Name: sslkey_version_idx; Type: INDEX; Schema: public; Owner: traffic_vault
--

CREATE INDEX sslkey_version_idx ON sslkey USING btree (version);
CREATE INDEX IF NOT EXISTS sslkey_version_idx ON sslkey USING btree (version);
END IF;
END$$;


--
-- Name: dnssec dnssec_last_updated; Type: TRIGGER; Schema: public; Owner: traffic_vault
--

CREATE TRIGGER dnssec_last_updated BEFORE UPDATE ON dnssec FOR EACH ROW EXECUTE PROCEDURE on_update_current_timestamp_last_updated();

DROP TRIGGER IF EXISTS dnssec_last_updated ON dnssec;
CREATE TRIGGER dnssec_last_updated
BEFORE UPDATE ON dnssec
FOR EACH ROW EXECUTE PROCEDURE on_update_current_timestamp_last_updated();

--
-- Name: sslkey sslkey_last_updated; Type: TRIGGER; Schema: public; Owner: traffic_vault
--

CREATE TRIGGER sslkey_last_updated BEFORE UPDATE ON sslkey FOR EACH ROW EXECUTE PROCEDURE on_update_current_timestamp_last_updated();

DROP TRIGGER IF EXISTS sslkey_last_updated on sslkey;
CREATE TRIGGER sslkey_last_updated
BEFORE UPDATE ON sslkey
FOR EACH ROW EXECUTE PROCEDURE on_update_current_timestamp_last_updated();

--
-- Name: uri_signing_key uri_signing_key_last_updated; Type: TRIGGER; Schema: public; Owner: traffic_vault
--

CREATE TRIGGER uri_signing_key_last_updated BEFORE UPDATE ON uri_signing_key FOR EACH ROW EXECUTE PROCEDURE on_update_current_timestamp_last_updated();

DROP TRIGGER IF EXISTS uri_signing_key_last_updated on uri_signing_key;
CREATE TRIGGER uri_signing_key_last_updated
BEFORE UPDATE ON uri_signing_key
FOR EACH ROW EXECUTE PROCEDURE on_update_current_timestamp_last_updated();

--
-- Name: url_sig_key url_sig_key_last_updated; Type: TRIGGER; Schema: public; Owner: traffic_vault
--

CREATE TRIGGER url_sig_key_last_updated BEFORE UPDATE ON url_sig_key FOR EACH ROW EXECUTE PROCEDURE on_update_current_timestamp_last_updated();

DROP TRIGGER IF EXISTS url_sig_key_last_updated on url_sig_key;
CREATE TRIGGER url_sig_key_last_updated
BEFORE UPDATE ON url_sig_key
FOR EACH ROW EXECUTE PROCEDURE on_update_current_timestamp_last_updated();

--
-- PostgreSQL database dump complete
Expand Down
6 changes: 6 additions & 0 deletions traffic_ops/app/db/trafficvault/test/run-tvdb-test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,12 @@ fi

./db/admin --trafficvault --env=production upgrade || { echo "DB upgrade failed!"; exit 1; }

if ! ./db/admin --trafficvault -env=production load_schema ||
! ./db/admin --trafficvault -env=production load_schema; then
echo 'Could not re-run create_tables.sql!'
exit 1
fi;

# insert some dummy TVDB data, run db/reencrypt/reencrypt to test it
sslkey_data=$(cat /sslkey.dat)
dnssec_data=$(cat /dnssec.dat)
Expand Down