Utilizing this function in the recurring billing event [], in order to abstract a lot of the expansion logic out of the MR itself.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=121579246
We moved a few internal tools to third_party/ as part of large java code move but there's not much use for
these files to be in opensource drop so I pull it back to our project directory.
Basically this CL does:
- mv j{,t}/c/[] d/r/tools/
- rm third_party/java_src/gtld/j/[]
- corresponding tweaks
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=121406277
Java's stock regex implementation doesn't guarantee linear time
complexity which makes it a security liability.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=121159875
The dark lord Gosling designed the Java package naming system so that
ownership flows from the DNS system. Since we own the domain name
registry.google, it seems only appropriate that we should use
google.registry as our package name.
This change renames directories in preparation for the great package
rename. The repository is now in a broken state because the code
itself hasn't been updated. However this should ensure that git
correctly preserves history for each file.
Plus refactoring of the KillAllXXXActions and tests to share
common code.
This essentially completes the KillAll []s. We can now reliably
clean out everything except for:
* Lock - harmless to leave alone or delete from the gae console
* GaeUserIdConverter - same
* RdeRevision - filed [] to track, but harmless if not cleaned up
* ForeignKeyHostIndex of renamed hosts - tracked in []
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=120781975
This refactoring allows the schemas to live in the same package they
are used, rather than all having to be inside the bigquery package.
This is a follow-up to []
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=120551011
This is needed to eliminate the last non-injected use of BigqueryFactory. It gets rid of the deprecated HttpServletUtils now that we don't have lots of separate servlets, and changes the check snapshot servlet's usage of such. It also fixes up some related minor style issues in the update snapshot action (and its injectable parameters).
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=120547998
In [] I made Registry a BGR in prep for each Registry being in
its own entity group. But we decided not to do that, and in []
mcilwain@ moved Registry under the cross-tld root. So there's no reason
for Registry to implement BackupGroupRoot anymore.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=120402417
Our whois format was flagged as wrong in the .meet PDT. Although
we had followed the AWIP samples from ICANN, the definitive list
of field names is from Specification 4 of our contract, available at
https://newgtlds.icann.org/sites/default/files/agreements/agreement-approved-09jan14-en.htm
and indeed our fields are incorrect. (The remaining formatting issues
are ambiguous but the PDT testers' interpretation is probably correct.)
Since the footer format is now somewhat more complicated, I also denormalized
the disclaimer field into all of the testdata files. (I spent some time
debugging an extra newline between the content and the disclaimer, and
it would have been far clearer to solve if the files had been this way.)
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=120338930
Also adds tests for currency consistency for other costs, and cleans
up some of the testing for negative currencies (since I was there).
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=120231198
This is part 2 of a longer series. Part 3 will add lots more tests, will add a cron entry, and will include an analysis script to run on BigQuery to detect the presence of two consecutive errors.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=120040267
This CL fixes bugs introduced when the premium list commands were moved to
be server-side commands.
Fixes:
- omitting the --name parameter actually works now; before it was failing
in the local build() call since it uses the name as the @Id and tries to
create a key for PremiumListRevision, but key IDs cannot be null.
- premium list data larger than about 2K works now (see [] before
it was stuffing the list data all into a POST query parameter, and URLs of
more than 2K in length were all getting 404s. Fix was changing it to put
the inputData param in the POST body.
- misc test cleanup
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=119912494
Backfill [] to follow, and the Recurring billing events will eventually be replicated as OneTime via a regular job.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=119883652
Also throwing in a proof-of-concept MR that I'd like to run in production, and then scrap once the meaty MR is finished (e.g. exploding Recurring billing events into OneTimes).
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=119881471
I'm writing a follow-up CL that will send integrity checking data to
BigQuery, and that is made a lot easier by centralizing the BigQuery
connection logic.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=119375766
This is the tool we'll run after dumping everything in sandbox except
for Registrars, Registries, and RegistrarContacts, in order to
re-create the commit logs on said entities.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=119369873
This fixes a previous issue where metrics generated on the
tools/backend modules weren't being successfully exported to BigQuery.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=119047757
There's no point in having this extra package exclusively for
[]s, especially because we already weren't being consistent and
had multiple []s in the tools/server package.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=118807843
In order to set the customerId field on a payment, the customer entry
must exist in Braintree's database. This CL causes it to be created or
updated before processing the payment.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=118530040
Removed "run_as_a_service" parameter from backup.create command in DatastoreBackupService.
This parameter can't be used externally, and is apparently no longer needed.
* DnsUpdateWriter publishes changes to NS, DS, A, AAAA records
for domains/hosts as appropriate using RFC 2136 DNS UPDATE protocol
* Static configuration separate from RegistryConfig
* Include dnsjava library as new third party dependency
to generate DNS protocol messages
* Expose /_dr/task/writeDns in RegistryTestServer
* Currently not included in BackendComponent
The payment page has also been updated to refuse to show itself if
the registrar is not set to credit card billing terms.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=117983313
1. Turn ConsoleUiServlet into an action
2. Remove AbstractUiServlet, which fixes its threading bug
3. Use type-safe soy template parameters when rendering console
A follow-up change will add a new template parameter that renders the
payment page link on the navigation bar.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=117969638
Reloading the entities under test every time is more resilient to
coding errors than trying to ensure that a local variable is kept up
to date. It also reduces total LoC in the test file.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=117842135
The APNIC conformance checker points out that, according to RFC 7483,
RDAP remarks should be included only as part of object classes such as
domains, nameservers and entities, not in help responses and so on.
Note that something is amiss here -- If RFC 7483 is read strictly, the
remarks boilerplate for domain, nameserver and entity search results
should appear not at the top level, as we currently do, but as part of
each constituent object. However, the conformance checker does not
seem to complain about that. So I have added this to the RDAP questions
list, and am leaving the boilerplate at the top level for now.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=117557594
RFC 7483 defines a way to attach events (such as registration, renewal, etc.) to domains, nameservers and entities. The ICANN Profile calls out particular events: registration, expiration, last changed and last update. This CL implements all the ICANN-defined events except last update (defined to be the last update time of the database), which doesn't make so much sense in our system.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=117546838
This improves one of our gTech processes so they no longer have to remember to create Google Groups for a registrar after creating that registrar.
The ConfirmingCommand.verify() method is renamed to be more general purpose, so that it can do anything that follows naturally after a successful execution, such as creating Google Groups groups.
Minor refactoring is done around RegistryToolEnvironment handling for tests to make it more bullet-proof and general case.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=117494277
Here's an alternate approach that I think simplifies the existing
code quite a bit. Now instead of doing:
RegistryToolEnvironment.loadFromArgs(args);
RegistryToolEnvironment.get().setup();
You just do one chained call:
RegistryToolEnvironment.parseFromArgs(args).setup();
or call setup() on a known environment constant:
RegistryToolEnvironment.ALPHA.setup();
This avoids having loadFromArgs() implicitly set the active env
(but *not* do setup) and then having setup() *not* set the active
env, both of which were confusing. Now parseFromArgs() is only
responsible for parsing from args, and setup() both sets the env
as the active one and does the environment variable setup (which
also ensures that the RegistryToolEnvironment.instance field
doesn't get out of sync with the RegistryEnvironment value).
In addition, this CL adds a runCommandInEnvironment() method to
CommandTestCase and ensures that the UNITTEST environment is always
set before constructing the default command instance.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=117492978
The previous code would not execute after failure tests that ended
with thrown exceptions, potentially causing issues with post-run
verification inside of tests.
-------------
Created by MOE: https://github.com/google/moe
MOE_MIGRATED_REVID=117484219