Skip to content

Commit

Permalink
org on objects
Browse files Browse the repository at this point in the history
  • Loading branch information
q committed Oct 28, 2024
1 parent 34abd1a commit 7b9b049
Show file tree
Hide file tree
Showing 3 changed files with 60 additions and 4 deletions.
24 changes: 20 additions & 4 deletions irrd/rpsl/rpsl_objects.py
Original file line number Diff line number Diff line change
Expand Up @@ -81,6 +81,7 @@ class RPSLAsBlock(RPSLObject):
("tech-c", RPSLReferenceField(lookup_key=True, multiple=True, referring=["role", "person"])),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -128,6 +129,7 @@ class RPSLAsSet(RPSLSet):
),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -159,9 +161,10 @@ class RPSLAutNum(RPSLObject):
("tech-c", RPSLReferenceField(lookup_key=True, multiple=True, referring=["role", "person"])),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
(
"mnt-by",
RPSLReferenceListField(lookup_key=True, optional=True, multiple=True, referring=["mntner"]),
RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"]),
),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand All @@ -186,6 +189,7 @@ class RPSLDomain(RPSLObject):
("refer", RPSLTextField(optional=True)), # ???
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
(
"mnt-by",
RPSLReferenceListField(lookup_key=True, optional=True, multiple=True, referring=["mntner"]),
Expand Down Expand Up @@ -217,6 +221,7 @@ class RPSLFilterSet(RPSLSet):
),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -257,6 +262,7 @@ class RPSLInetRtr(RPSLObject):
),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand All @@ -278,6 +284,7 @@ class RPSLInet6Num(RPSLObject):
("geofeed", RPSLURLField(optional=True)),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand All @@ -299,6 +306,7 @@ class RPSLInetnum(RPSLObject):
("geofeed", RPSLURLField(optional=True)),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -329,6 +337,7 @@ class RPSLIrt(RPSLObject):
),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -450,6 +459,7 @@ class RPSLMntner(RPSLObject):
("auth", RPSLAuthField(multiple=True)),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, optional=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -520,7 +530,7 @@ class RPSLOrganisation(RPSLObject):
("organisation", RPSLGenericNameField(primary_key=True, lookup_key=True)),
("org-name", RPSLTextField()),
("country", RPSLTextField(multiple=True)),
("address", RPSLTextField(multiple=True)),
("address", RPSLTextField(optional=True, multiple=True)),
("phone", RPSLTextField(optional=True, multiple=True)),
("fax-no", RPSLTextField(optional=True, multiple=True)),
("e-mail", RPSLEmailField(multiple=True)),
Expand Down Expand Up @@ -566,6 +576,7 @@ class RPSLPeeringSet(RPSLSet):
),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand All @@ -577,8 +588,8 @@ class RPSLPerson(RPSLObject):
fields = OrderedDict(
[
("person", RPSLTextField(lookup_key=True)),
("address", RPSLTextField(multiple=True)),
("phone", RPSLTextField(multiple=True)),
("address", RPSLTextField(optional=True, multiple=True)),
("phone", RPSLTextField(optional=True, multiple=True)),
("fax-no", RPSLTextField(optional=True, multiple=True)),
("e-mail", RPSLEmailField(multiple=True)),
("nic-hdl", RPSLGenericNameField(primary_key=True, lookup_key=True, non_strict_allow_any=True)),
Expand Down Expand Up @@ -615,6 +626,7 @@ class RPSLRole(RPSLObject):
("nic-hdl", RPSLGenericNameField(primary_key=True, lookup_key=True, non_strict_allow_any=True)),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -658,6 +670,7 @@ class RPSLRoute(RPSLObject):
("roa-uri", RPSLTextField(optional=True)),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -703,6 +716,7 @@ class RPSLRouteSet(RPSLSet):
),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -746,6 +760,7 @@ class RPSLRoute6(RPSLObject):
("roa-uri", RPSLTextField(optional=True)),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down Expand Up @@ -803,6 +818,7 @@ class RPSLRtrSet(RPSLSet):
),
("remarks", RPSLTextField(optional=True, multiple=True)),
("notify", RPSLEmailField(optional=True, multiple=True)),
("org", RPSLReferenceField(lookup_key=True, multiple=True, referring=["organisation"])),
("mnt-by", RPSLReferenceListField(lookup_key=True, multiple=True, referring=["mntner"])),
("changed", RPSLChangedField(optional=True, multiple=True)),
("source", RPSLGenericNameField()),
Expand Down
39 changes: 39 additions & 0 deletions irrd/storage/alembic/versions/f56387c94696_add_org_ref.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
"""Add org ref
Revision ID: f56387c94696
Revises: b7b3c367f9ba
Create Date: 2024-10-28 12:58:32.798679
"""
from alembic import op
import sqlalchemy as sa


# revision identifiers, used by Alembic.
revision = 'f56387c94696'
down_revision = 'b7b3c367f9ba'
branch_labels = None
depends_on = None


def upgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.alter_column('rpsl_database_journal', 'serial_global',
existing_type=sa.BIGINT(),
nullable=False,
existing_server_default=sa.text("nextval('rpsl_database_journal_serial_global_seq'::regclass)"))

op.create_index(op.f('ix_rpsl_objects_parsed_data_org'), 'rpsl_objects',
[sa.text("((parsed_data->'org'))")], unique=False, postgresql_using='gin')
# ### end Alembic commands ###


def downgrade():
# ### commands auto generated by Alembic - please adjust! ###
op.alter_column('rpsl_database_journal', 'serial_global',
existing_type=sa.BIGINT(),
nullable=True,
existing_server_default=sa.text("nextval('rpsl_database_journal_serial_global_seq'::regclass)"))

op.drop_index(op.f('ix_rpsl_objects_parsed_data_org'), table_name='rpsl_objects')
# ### end Alembic commands ###
1 change: 1 addition & 0 deletions irrd/storage/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -655,6 +655,7 @@ def description(self) -> str:
"mp-members",
"origin",
"mbrs-by-ref",
"org",
}
if sorted(lookup_field_names()) != sorted(expected_lookup_field_names): # pragma: no cover
raise RuntimeError(
Expand Down

0 comments on commit 7b9b049

Please sign in to comment.