hashicorp/vagrant · warning
No URL was provided to upload the provider You will need to
Error message
No URL was provided to upload the provider You will need to run the `vagrant cloud provider upload` command to provide a box
What it means
Warning from `vagrant cloud provider update` (plugins/commands/cloud/provider/update.rb) when the invocation carries no --url. Exactly like provider create: the update still proceeds (checksum, architecture, default_architecture fields are applied; p.url = url if !url.nil? leaves the URL untouched), but the notice reminds you the provider's hosted box file can only be supplied via `vagrant cloud provider upload`.
Source
Thrown at plugins/commands/cloud/provider/update.rb:71
update_provider(org, box_name, version, provider_name, architecture, url, @client.token, options)
end
# Update a provider for the box version
#
# @param [String] org Organization name
# @param [String] box Box name
# @param [String] version Box version
# @param [String] provider Provider name
# @param [String] architecture Architecture of guest
# @param [String] access_token User Vagrant Cloud access token
# @param [Hash] options
# @option options [String] :checksum Checksum of the box asset
# @option options [String] :checksum_type Type of the checksum
# @return [Integer]
def update_provider(org, box, version, provider, architecture, url, access_token, options)
if !url
@env.ui.warn(I18n.t("cloud_command.upload.no_url"))
end
account = VagrantCloud::Account.new(
custom_server: api_server_url,
access_token: access_token
)
with_provider(account: account, org: org, box: box, version: version, provider: provider, architecture: architecture) do |p|
p.checksum = options[:checksum] if options.key?(:checksum)
p.checksum_type = options[:checksum_type] if options.key?(:checksum_type)
p.architecture = options[:architecture] if options.key?(:architecture)
p.default_architecture = options[:default_architecture] if options.key?(:default_architecture)
p.url = url if !url.nil?
p.save
@env.ui.success(I18n.t("cloud_command.provider.update_success",
architecture: architecture, provider: provider, org: org, box_name: box, version: version))
format_box_results(p, @env)View on GitHub (pinned to 35f3160f4a)
Solutions
- After a metadata-only update, push the artifact with `vagrant cloud provider upload org/box 1.0.3 virtualbox --architecture amd64 --file ./new.box`.
- If the artifact is self-hosted, include --url https://... in the update command to set/replace the download URL directly.
- Use `vagrant cloud publish` with the box file path for a create-or-update flow that guarantees an asset.
- Confirm the final state with `vagrant cloud box show org/box` (URL present / file size updated).
Example fix
# before vagrant cloud provider update myorg/app 1.0.3 virtualbox amd64 --checksum abc123 # -> No URL was provided ... # after (artifact hosted remotely) vagrant cloud provider update myorg/app 1.0.3 virtualbox amd64 \ --checksum abc123 --url https://cdn.example.com/app-1.0.3.box
Defensive patterns
Strategy: validation
Validate before calling
if [ -z "$BOX_URL" ] && [ ! -f "$BOX_FILE" ]; then echo "update carries no asset: pass --url or run cloud provider upload after" >&2 fi
Prevention
- Include --url whenever the artifact is remotely hosted so updates are self-contained.
- After metadata-only updates, finish with provider upload before releasing.
- Checksum updates without a new file will break downloads — always pair new checksum with new upload.
When it happens
Trigger: Running `vagrant cloud provider update org/box 1.0.3 virtualbox amd64` without --url while updating metadata such as --checksum/--checksum-type; any metadata-only refresh of an existing provider entry.
Common situations: Rotating checksums after re-signing artifacts; updating default_architecture flags; operators who believe update also uploads the file — it does not, the warning marks the gap.
Related errors
- No URL was provided to upload the provider You will need to
- This command was not invoked properly. The help for this com
- This command was not invoked properly. The help for this com
- This command was not invoked properly. The help for this com
- This command was not invoked properly. The help for this com
AI-assisted analysis of hashicorp/vagrant@35f3160f4a (2026-08-21).
Data as JSON: /api/errors/a564f8db4bffd499.
Report an issue: GitHub.