Proactive integrity checks
AssigneeRed Hat, Inc.
InventorsAndrea Cosentino, Paolo Antinori
Life of this patent
Estimating the term…
Abstract
A request to validate a project object model (POM) is received from a client device. The POM references one or more modules, each of which is associated with one or more artifacts. The artifacts associated with a module are downloaded to a staging repository along with checksums of the artifacts. The downloaded checksum is compared to a checksum calculated on the staging repository. Upon determining that the downloaded checksum matches the calculated checksum for all artifacts of all modules, the POM is moved to the staging repository.
Claims20
A method of validating a project object model (POM), the POM comprising a plurality of modules, each of the plurality of modules comprising a plurality of artifacts, the method comprising:
- retrieving, by a client, a logfile comprising a listing of the plurality of artifacts, the plurality of artifacts associated with the plurality of modules;
- for each artifact identified in the listing:
- downloading, by the client, to a staging repository, the artifact and an artifact checksum of the artifact to generate a downloaded artifact and a downloaded checksum;
- comparing, by a processing device, a calculated checksum of the downloaded artifact with the downloaded checksum, the calculated checksum obtained from other than the client and the staging repository;
- and
- responsive to the calculated checksum not matching the downloaded checksum, downloading, by the client, to the staging repository, a second copy of the artifact and a second artifact checksum of the artifact to generate a second downloaded artifact and a second downloaded checksum;
- and
- responsive to at least one of the calculated checksum matching the downloaded checksum or the calculated checksum matching the second downloaded checksum, for each artifact identified in the listing, transitioning the POM to a release-ready state.
A system comprising:
- a memory;
- and
- a processing device, operatively coupled to the memory, to:
- receive a request to validate a plurality of modules, each of the plurality of modules comprising a plurality of artifacts, the request further comprising a project object model (POM), the POM comprising the plurality of modules;
- retrieve a logfile comprising a listing of the plurality of artifacts, the plurality of artifacts associated with the plurality of modules;
- for each artifact identified in the listing:
- cause to be downloaded to a staging repository, the artifact and an artifact checksum associated with the artifact to generate a downloaded artifact and a downloaded checksum;
- compare, by the processing device, a calculated checksum of the downloaded artifact with the downloaded checksum, the calculated checksum generated on a second processing device, the second processing device distinct from the processing device;
- responsive to the calculated checksum not matching the downloaded checksum, cause to be downloaded to the staging repository, a second copy of the artifact and a second artifact checksum of the artifact to generate a second downloaded artifact and a second downloaded checksum;
- and
- responsive to at least one of the calculated checksum matching the downloaded checksum or the calculated checksum matching the second downloaded checksum, for each artifact identified in the listing, transition the POM to a release-ready state.
A non-transitory computer-readable storage medium including instructions for validating a project object model (POM) the POM comprising a plurality of modules, each of the plurality of modules comprising a plurality of artifacts that, when executed by a processing device, cause the processing device to:
- retrieve a logfile comprising a listing of the plurality of artifacts, the plurality of artifacts associated with the plurality of modules;
- for each artifact identified in the listing:
- cause to be downloaded to a staging repository, the artifact and an artifact checksum associated with the artifact to generate a downloaded artifact and a downloaded checksum;
- compare, by the processing device, a calculated checksum of the downloaded artifact with the downloaded checksum, the calculated checksum generated by a second processing device, the second processing device distinct from the processing device;
- and
- responsive to the calculated checksum not matching the downloaded checksum, cause to be downloaded to the staging repository, a second copy of the artifact and a second artifact checksum of the artifact to generate a second downloaded artifact and a second downloaded checksum;
- and
- responsive to at least one of the calculated checksum matching the downloaded checksum or the calculated checksum matching the second downloaded checksum, for each artifact identified in the listing, transition the POM to a release-ready state.
Dependencies are inferred from the claim text.