Thanks for looking into this Danny Daniel, it seems like your best bet would be to host snapshots somewhere on your own infrastructure? I feel like that's probably the safest and most reliable solution in case you need to do this again in the future.
Best, B On Fri, Jul 22, 2022 at 1:35 PM Danny McCormick <dannymccorm...@google.com> wrote: > I reached out to the Apache Infra team in their slack channel and have yet > to hear back. Given that it's getting pretty late on a Friday here (I'm > located in East US), it is unlikely that I will have a workaround by the > time the snapshot is removed by the retention policy; to ensure continued > functionality over the weekend and the start of next week, I recommend > pinning to a later snapshot. > > Thanks, > Danny > > On Fri, Jul 22, 2022 at 2:17 PM Daniel Thevessen <dant...@google.com> > wrote: > >> I don't know if this helps, but I found one directory that has retained >> an old build from 2017 even, the one for 0.7.0-SNAPSHOT >> <https://repository.apache.org/content/groups/snapshots/org/apache/beam/beam-sdks-java-io-google-cloud-platform/0.7.0-SNAPSHOT/>. >> Every other snapshots directory is empty. >> Is it possible they don't get deleted if they're in use? The sonatype >> documentation you linked mentions a "last downloaded" criterion, I'm not >> sure if it is enabled though. >> I haven't been able to find a matching cleanup script in the Beam repo or >> a config file in the snapshots directory, it must be configured somewhere >> else. >> >> If we could somehow get (1) or (2) to work that would be extremely >> helpful, changing the dependency back to 2.41.0-SNAPSHOT comes with risks >> and difficulties for us. >> >> >> >> On Fri, Jul 22, 2022 at 8:10 AM Danny McCormick < >> dannymccorm...@google.com> wrote: >> >>> > I think you could change the TTL on the Jenkins side (That sound right >>> to you Danny?) but I'm not sure we could preserve a specific snapshot >>> without keeping all of them... >>> >>> I'm admittedly not particularly well versed in this area of our infra, >>> but after some digging I don't see a way to do this. I'm still piecing >>> together how our release infra works, but at a high level we use the Maven >>> publish plugin [1] to publish >>> snapshots to the ASF managed Nexus snapshots repo (which is shared >>> across projects). As best I can tell, there isn't a way to configure >>> retention from the repo side, and it is likely managed by a repo-wide >>> cleanup policy [3]. I don't have the right permission set to actually view >>> cleanup policies, so I can't say that with 100% confidence, but I do see >>> that other projects seem to be limited to a smallish number of snapshot >>> versions as well [4] [5] [6] which points to a repo-wide policy, and I >>> think that's a common way to handle things like this. >>> >>> If someone with more experience with our releases wants to chime in and >>> confirm that understanding or say I'm wrong, I'd appreciate it. Or, if I'm >>> right and someone actually has access to modify the cleanup policy (maybe >>> @Kenneth >>> Knowles <k...@google.com>) and can just change it, that would be awesome! >>> >>> Options for moving forward: >>> 1) If someone has permissions, change the retention policy for the time >>> being. >>> 2) Engage infra and see if (a) they can confirm the setup is indeed what >>> I described and (b) if they can help temporarily change the retention >>> policy for Beam. >>> 3) Daniel, you could change how you're consuming the artifacts. The >>> shortest term version of this (which would buy more time to figure out a >>> solution) is just updating to a more recent snapshot, but you could also >>> just pin to the latest snapshot version (obviously has its risks), or >>> mirror the dependencies into your own maven repo. You could also just pin >>> to 2.40 if this is a regression. >>> >>> Obviously any solution that isn't pinning to 2.40 is operating in an >>> unsafe mode since we haven't performed the usual level of validation that >>> accompanies a release. >>> >>> Thanks, >>> Danny >>> >>> [1] https://docs.gradle.org/current/userguide/publishing_maven.html >>> [2] https://infra.apache.org/publishing-maven-artifacts.html >>> [3] >>> https://help.sonatype.com/repomanager3/nexus-repository-administration/repository-management/cleanup-policies >>> [4] >>> https://repository.apache.org/content/groups/snapshots/org/apache/avro/avro-compiler/1.12.0-SNAPSHOT/ >>> [5] >>> https://repository.apache.org/content/groups/snapshots/org/apache/flink/flink-architecture-tests-base/1.15-SNAPSHOT/ >>> [6] >>> https://repository.apache.org/content/groups/snapshots/org/apache/iotdb/client-cpp-example/0.14.0-SNAPSHOT/ >>> >>> On Thu, Jul 21, 2022 at 8:54 PM Evan Galpin <egal...@apache.org> wrote: >>> >>>> Admittedly this is potentially self-serving, but I feel there could be >>>> mutual benefit. >>>> >>>> I have a similar situation where I want to use pre-release version of >>>> beam-sdks-java-io-google-cloud-platform. Though I’ve been having >>>> trouble doing so, a possible alternative solution to using the nightly >>>> snapshots might be building beam-sdks-java-io-google-cloud-platform >>>> from source and including the resulting jar as part of the pipeline >>>> deployment. I’ve successfully done this for direct runner, but not Dataflow >>>> runner. >>>> >>>> Perhaps some others on the thread might be able to shed light on this >>>> technique (only if applicable to solving the original problem, as I don’t >>>> intend to thread-hijack). >>>> >>>> - Evan >>>> >>>> On Thu, Jul 21, 2022 at 19:45 Byron Ellis via dev <dev@beam.apache.org> >>>> wrote: >>>> >>>>> I think you could change the TTL on the Jenkins side (That sound right >>>>> to you Danny?) but I'm not sure we could preserve a specific snapshot >>>>> without keeping all of them... >>>>> >>>>> On Thu, Jul 21, 2022 at 4:16 PM Ahmet Altay <al...@google.com> wrote: >>>>> >>>>>> Thank you for the email Daniel. >>>>>> >>>>>> Adding people who could help: @Kenneth Knowles <k...@google.com> @Danny >>>>>> McCormick <dannymccorm...@google.com> @Chamikara Jayalath >>>>>> <chamik...@google.com> @John Casey <johnjca...@google.com> @Byron >>>>>> Ellis <byronel...@google.com> >>>>>> >>>>>> On Thu, Jul 21, 2022, 4:14 PM Daniel Thevessen via dev < >>>>>> dev@beam.apache.org> wrote: >>>>>> >>>>>>> Hi all, >>>>>>> >>>>>>> The Java Firestore connector had a bug >>>>>>> <https://github.com/apache/beam/issues/22089> recently that needed >>>>>>> to be fixed. Until the fix can be released as part of 2.41.0, we need >>>>>>> one >>>>>>> of the daily snapshot builds >>>>>>> <https://repository.apache.org/content/groups/snapshots/org/apache/beam/beam-sdks-java-io-google-cloud-platform/2.41.0-SNAPSHOT/> >>>>>>> as a safe version to use. This is the one from Jul 15 >>>>>>> (2.41.0-20220715.201105-31), which we have checked to be working >>>>>>> correctly >>>>>>> and some have already switched to. >>>>>>> Unfortunately it looks like these builds get cleared out after a >>>>>>> while for storage reasons. Would it be possible to extend the TTL on >>>>>>> just >>>>>>> that build, at least until 2.41.0 is released? I'm guessing this would >>>>>>> just >>>>>>> be a settings change for whoever owns the Snapshots repository. >>>>>>> The change is in beam-sdks-java-io-google-cloud-platform, but I'm >>>>>>> fairly certain the other Java packages need to be kept as well for >>>>>>> compatibility. >>>>>>> >>>>>>> This is relatively urgent, it looks like the TTL might be weekly so >>>>>>> that build will be deleted on Saturday. >>>>>>> >>>>>>> Thanks, >>>>>>> Daniel Thevessen >>>>>>> >>>>>>> >>>>>>> >> >> -- >> >> Daniel Thevessen | Site Reliability Engineer >> >> Firestore SRE >> San Francisco, CA, USA | +1 (415) 373-7762 <(415)%20373-7762> >> >