-
Notifications
You must be signed in to change notification settings - Fork 346
Description
So I've followed the docs on getting started with Bitbucket which was pretty smooth: https://cml.dev/doc/start/bitbucket
I've then tried to extend this with the 'marketing' code snippet on https://cml.dev/, which is also the 'documented' Bitbucket solution
cml runner launch \
--cloud=aws \
--cloud-region=us-west \
--cloud-type=m5.2xlarge \
--cloud-spot \
--labels=cml.runner
I've also combined this with the Blog by Rob here: https://dvc.org/blog/bitbucket-cml-runners which outlines extending the REPO_TOKEN
with AWS_ACCESS_KEY_ID
and AWS_SECRET_ACCESS_KEY
. I'm pretty certain the REPO_TOKEN
is correct as the 'comment' step from the other example is working. I'm also pretty certain the secret keys are working as well from the AWS IAM 'last used' values ticking over each time.
The error is being raised internally in the cml runner
call from terraform.
{"level":"info","message":"Preparing workdir /home/runner..."}
{"level":"info","message":"Deploying cloud runner plan..."}
{"level":"info","message":"Terraform apply..."}
{"level":"info","message":"Terraform 1.9.8"}
{"level":"info","message":"iterative_cml_runner.runner: Plan to create"}
{"level":"info","message":"Plan: 1 to add, 0 to change, 0 to destroy."}
{"level":"info","message":"iterative_cml_runner.runner: Creating..."}
{"level":"info","message":"iterative_cml_runner.runner: Creation errored after 2s"}
{"level":"error","message":"terraform error: Error: Failed creating the machine: Nor iterative-cml nor Ubuntu Server 18.04 are available in your region"}
A number of --cloud-image
values were tried, including variations described in #1494 and a number of strings representing generic amazon ami images. The error stayed the same, except replacing iterative-cml
with the value supplied in --cloud-image
I'm spiking this for use in a work project, and I'm a little concerned about adopting this for a few reasons:
- This example project of using AWS + BitBucket + CML was last proven to 'work' 3 years ago: https://bitbucket.org/iterative-ai/example_model_export_cml/pipelines
- This example project as written currently won't work without at least a minor edit, as
cml runner
is nowcml runner launch
, missing thelaunch
will give (an informative) error cml runner launch
seems to have an undocumented--cloud-image
argument, which does seem to have an impact in the error message in this case directly, but it seems entirely undocumented. I discovered it from here:cml runner launch
stopped working for GCP #1494 and it seems it's lack of documentation was discussed here in 2023: Implementcml runner launch --cloud-image
#1302- The currently 'recommended' practice of creating a
REPO_TOKEN
from username and password hashed works for now, but is depreciated from last month and will be disabled on June 9, 2026 according to a message on Bitbucket in User > Access Management > App passwords.
What is the state of the project right now? Is it still suitable for adoption, or is it being quietly depreciated, migrated or replaced?
I hope this doesn't sound judgy or angry. I'm not emotionally invested in this at all, just trying to make a good choice for the company. We've had great success in adopting the core dvc
project for managing ml experiments and hopefully will continue in the years to come 🤞🏻