|
| 1 | +# Copyright The IETF Trust 2017, All Rights Reserved |
| 2 | +# -*- coding: utf-8 -*- |
| 3 | + |
| 4 | +from __future__ import unicode_literals |
| 5 | + |
| 6 | +from django.db import migrations |
| 7 | + |
| 8 | +downref_registry_from_wiki = [ |
| 9 | + ['rfc952', 'draft-hollenbeck-rfc4931bis'], |
| 10 | + ['rfc952', 'draft-hollenbeck-rfc4932bis'], |
| 11 | + ['rfc1094','draft-ietf-nfsv4-nfsdirect'], |
| 12 | + ['rfc1321','rfc3967'], |
| 13 | + ['rfc1813','draft-ietf-nfsv4-nfsdirect'], |
| 14 | + ['rfc1951','draft-ietf-lemonade-compress'], |
| 15 | + ['rfc1952','draft-sweet-rfc2911bis'], |
| 16 | + ['rfc1977','draft-sweet-rfc2911bis'], |
| 17 | + ['rfc2104','rfc3967'], |
| 18 | + ['rfc2144','draft-ietf-secsh-newmodes'], |
| 19 | + ['rfc2315','draft-eastlake-additional-xmlsec-uris'], |
| 20 | + ['rfc2330','draft-ietf-ippm-metrictest'], |
| 21 | + ['rfc2412','draft-ietf-cat-kerberos-pk-init'], |
| 22 | + ['rfc2648','draft-ietf-simple-xcap-diff'], |
| 23 | + ['rfc2683','draft-ietf-qresync-rfc5162bis'], |
| 24 | + ['rfc2702','draft-ietf-isis-admin-tags'], |
| 25 | + ['rfc2781','draft-ietf-appsawg-xml-mediatypes'], |
| 26 | + ['rfc2818','draft-dusseault-caldav'], |
| 27 | + ['rfc2898','draft-turner-asymmetrickeyformat-algs'], |
| 28 | + ['rfc2966','draft-ietf-isis-admin-tags'], |
| 29 | + ['rfc2985','rfc5750'], |
| 30 | + ['rfc2986','rfc6487'], |
| 31 | + ['rfc3032','draft-ietf-pals-rfc4447bis'], |
| 32 | + ['rfc3174','draft-harris-ssh-rsa-kex'], |
| 33 | + ['rfc3196','draft-sweet-rfc2911bis'], |
| 34 | + ['rfc3217','draft-ietf-smime-cms-rsa-kem'], |
| 35 | + ['rfc3272','draft-ietf-mpls-cosfield-def'], |
| 36 | + ['rfc3280','rfc3852'], |
| 37 | + ['rfc3281','rfc3852'], |
| 38 | + ['rfc3394','draft-ietf-smime-cms-rsa-kem'], |
| 39 | + ['rfc3447','draft-ietf-cat-kerberos-pk-init'], |
| 40 | + ['rfc3469','draft-ietf-mpls-cosfield-def'], |
| 41 | + ['rfc3548','draft-ietf-dnsext-dnssec-records'], |
| 42 | + ['rfc3564','draft-ietf-mpls-cosfield-def'], |
| 43 | + ['rfc3567','draft-ietf-pce-disco-proto-isis'], |
| 44 | + ['rfc3610','rfc4309'], |
| 45 | + ['rfc3843','rfc5953'], |
| 46 | + ['rfc3579','draft-ietf-radext-rfc4590bis'], |
| 47 | + ['rfc3618','draft-ietf-mboned-msdp-deploy'], |
| 48 | + ['rfc3713','draft-kato-ipsec-ciph-camellia'], |
| 49 | + ['rfc3784','draft-ietf-isis-admin-tags'], |
| 50 | + ['rfc3985','draft-ietf-mpls-cosfield-def'], |
| 51 | + ['rfc4050','draft-eastlake-additional-xmlsec-uris'], |
| 52 | + ['rfc4082','draft-ietf-msec-srtp-tesla'], |
| 53 | + ['rfc4226','draft-ietf-keyprov-pskc'], |
| 54 | + ['rfc4269','draft-eastlake-additional-xmlsec-uris'], |
| 55 | + ['rfc4291','draft-hollenbeck-rfc4932bis'], |
| 56 | + ['rfc4347','rfc5953'], |
| 57 | + ['rfc4357','draft-ietf-pkix-gost-cppk'], |
| 58 | + ['rfc4366','rfc5953'], |
| 59 | + ['rfc4492','draft-ietf-tls-chacha20-poly1305'], |
| 60 | + ['rfc4493','draft-songlee-aes-cmac-96'], |
| 61 | + ['rfc4627','draft-ietf-mediactrl-ivr-control-package'], |
| 62 | + ['rfc4753','draft-ietf-ipsec-ike-auth-ecdsa'], |
| 63 | + ['rfc4949','draft-ietf-oauth-v2'], |
| 64 | + ['rfc5036','draft-ietf-pals-rfc4447bis'], |
| 65 | + ['rfc5246','rfc5953'], |
| 66 | + ['rfc5280','rfc5953'], |
| 67 | + ['rfc5322','draft-hollenbeck-rfc4933bis'], |
| 68 | + ['rfc5410','draft-arkko-mikey-iana'], |
| 69 | + ['rfc5489','draft-ietf-tls-chacha20-poly1305'], |
| 70 | + ['rfc5598','draft-ietf-dkim-mailinglists'], |
| 71 | + ['rfc5649','draft-turner-asymmetrickeyformat-algs'], |
| 72 | + ['rfc5753','draft-turner-cms-symmetrickeypackage-algs'], |
| 73 | + ['rfc5781','draft-ietf-sidr-res-certs'], |
| 74 | + ['rfc5869','draft-ietf-trill-channel-tunnel'], |
| 75 | + ['rfc5890','draft-ietf-dkim-rfc4871bis'], |
| 76 | + ['rfc5911','draft-turner-asymmetrickeyformat'], |
| 77 | + ['rfc5912','draft-ietf-pkix-authorityclearanceconstraints'], |
| 78 | + ['rfc5952','rfc5953'], |
| 79 | + ['rfc6043','draft-arkko-mikey-iana'], |
| 80 | + ['rfc6090','draft-turner-akf-algs-update'], |
| 81 | + ['rfc6151','draft-ietf-netmod-system-mgmt'], |
| 82 | + ['rfc6234','draft-schaad-pkix-rfc2875-bis'], |
| 83 | + ['rfc6386','draft-ietf-rtcweb-video'], |
| 84 | + ['rfc6480','rfc6485'], |
| 85 | + ['rfc6480','rfc6489'], |
| 86 | + ['rfc6480','rfc6491'], |
| 87 | + ['rfc6480','rfc7935'], |
| 88 | + ['rfc6707','draft-ietf-cdni-metadata'], |
| 89 | + ['rfc6839','draft-ietf-appsawg-xml-mediatypes'], |
| 90 | + ['rfc7251','rfc7252'], |
| 91 | + ['rfc7358','draft-ietf-pals-rfc4447bis'], |
| 92 | + ['rfc7539','draft-ietf-tls-chacha20-poly1305'], |
| 93 | + ['rfc7612','draft-sweet-rfc2911bis'], |
| 94 | + ['rfc7748','draft-ietf-jose-cfrg-curves'], |
| 95 | + ['rfc8032','draft-ietf-jose-cfrg-curves'] ] |
| 96 | + |
| 97 | + |
| 98 | +def addDownrefRelationships(apps,schema_editor): |
| 99 | + DocAlias = apps.get_model('doc','DocAlias') |
| 100 | + RelatedDocument = apps.get_model('doc','RelatedDocument') |
| 101 | + |
| 102 | + for [fn2, fn1] in downref_registry_from_wiki: |
| 103 | + da1 = DocAlias.objects.get(name=fn1) |
| 104 | + da2 = DocAlias.objects.get(name=fn2) |
| 105 | + RelatedDocument.objects.create(source=da1.document, |
| 106 | + target=da2, relationship_id='downref-approval') |
| 107 | + |
| 108 | + |
| 109 | +def removeDownrefRelationships(apps,schema_editor): |
| 110 | + DocAlias = apps.get_model('doc','DocAlias') |
| 111 | + RelatedDocument = apps.get_model('doc','RelatedDocument') |
| 112 | + |
| 113 | + for [fn2, fn1] in downref_registry_from_wiki: |
| 114 | + da1 = DocAlias.objects.get(name=fn1) |
| 115 | + da2 = DocAlias.objects.get(name=fn2) |
| 116 | + RelatedDocument.objects.filter(source=da1.document, |
| 117 | + target=da2, relationship_id='downref-approval').delete() |
| 118 | + |
| 119 | + |
| 120 | +class Migration(migrations.Migration): |
| 121 | + |
| 122 | + dependencies = [ |
| 123 | + ('name', '0019_add_docrelationshipname_downref_approval'), |
| 124 | + ('doc', '0025_auto_20170307_0146'), |
| 125 | + ] |
| 126 | + |
| 127 | + operations = [ |
| 128 | + migrations.RunPython(addDownrefRelationships,removeDownrefRelationships) |
| 129 | + ] |
0 commit comments