view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/Authority.pm view on Meta::CPAN
}
}
close $fh or $self->log_fatal( "Unable to close $file - $!" );
$self->log_fatal( 'PAUSE user not found in ~/.pause' );
} else {
$self->log_fatal( 'PAUSE credentials not found in "config.ini" or "dist.ini" or "~/.pause"! Please set it or specify an authority for this plugin.' );
}
}
},
);
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/Bitbucket.pm view on Meta::CPAN
die "Unknown local repository type!";
}
},
);
sub _get_credentials {
my ($self, $nopass) = @_;
# TODO I'm so lazy...
## no critic (InputOutput::ProhibitBacktickOperators)
lib/Dist/Zilla/Plugin/Bitbucket.pm view on Meta::CPAN
}
}
# Make sure we return full path including user
if ($repo !~ /.*\/.*/) {
($login, undef) = $self->_get_credentials(1);
$repo = "$login/$repo";
}
} else {
# Get it from .hgrc
if ( -f '.hg/hgrc' ) {
lib/Dist/Zilla/Plugin/Bitbucket.pm view on Meta::CPAN
=back
=head2 Configuration
Configure git with your Bitbucket credentials:
$ git config --global bitbucket.user LoginName
$ git config --global bitbucket.password MySecretPassword
Alternatively you can install L<Config::Identity> and write your credentials
in the (optionally GPG-encrypted) C<~/.bitbucket> file as follows:
login LoginName
password MySecretPassword
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/Docker/API.pm view on Meta::CPAN
#
# The phase hook that runs early enough is before_build, and it can tell a
# release from a plain build: Dist::Zilla::Dist::Builder::release sets
# DZIL_RELEASING before it calls build_archive, so the variable is already
# there when this hook runs (measured against Dist::Zilla 6.037). A plain
# dzil build never sets it and so never needs registry credentials.
#
# Only the registry host of `image` decides which credential applies, and
# that part carries no template variables, so no expansion is needed here.
sub _precheck_registry_auth {
my ($self) = @_;
lib/Dist/Zilla/Plugin/Docker/API.pm view on Meta::CPAN
}
# No credential found for that registry. An anonymous push is a legal
# thing to attempt, so this is a note, not a failure.
unless (defined $status) {
$self->log('Docker::API: no registry credentials found for '
.$image_ref.' - the release push will be anonymous');
return;
}
$self->log('Docker::API registry credentials accepted for '.$image_ref);
}
sub after_build {
my ($self, $arg) = @_;
lib/Dist/Zilla/Plugin/Docker/API.pm view on Meta::CPAN
When C<before_build> runs as part of C<dzil release> (Dist::Zilla sets
C<DZIL_RELEASING> before it calls C<build_archive>, which is early enough to
tell a release from a plain build) and both C<release_enabled> and
C<release_push> are true, the same hook also pre-flights the registry
credential the eventual push would use -- resolved as described in
L</"Registry credentials"> below -- and hands it to the engine's
C<POST /auth> (C<< system->auth >>) before anything is built. A plain
C<dzil build> never triggers this and needs no registry credentials at all.
No credential resolved for the registry is not a failure -- an anonymous push
is a legal thing to attempt, so nothing is checked and nothing fails. A
failed check is fatal, before the build starts, and its message says only
that the check failed, not that the credential was rejected: Podman answers
a rejected credential and an unreachable registry with the same C<500>, so
lib/Dist/Zilla/Plugin/Docker/API.pm view on Meta::CPAN
C<dzil build> / C<dzil install> / C<dzil test> while the image cannot build
yet, for example while a dependency pinned in the F<Dockerfile>'s C<cpanm>
run is not released. C<dzil release> refuses to run with the variable set:
a skipped build phase means there is no image to tag and push.
=head2 Registry credentials
The release push, the C<fail_if_tag_exists> lookup and the registry
credential precheck above all resolve a credential for an image reference
the same way, through C<auth_for_image_ref>, which walks an ordered list of
candidate auth files rather than reading a single one. For the registry the
image reference names, the first candidate file with a usable entry for it
wins; a file with none falls through to the next, so a Docker config and a
Podman auth file can each supply credentials for different registries in
the same run. In order: C<REGISTRY_AUTH_FILE>, if set, names the file
directly; then F<config.json> in the directory named by C<DOCKER_CONFIG>,
if set; then F<$XDG_RUNTIME_DIR/containers/auth.json>, if
C<XDG_RUNTIME_DIR> is set; then F<containers/auth.json> under
C<XDG_CONFIG_HOME> (or under F<~/.config> when that is unset); and finally
lib/Dist/Zilla/Plugin/Docker/API.pm view on Meta::CPAN
=item C<fail_if_tag_exists> - Abort the release if any tag already exists on
the remote registry (default: false). The check runs before anything is
tagged or pushed, and only when C<release_push> is also true. It asks the
I<registry>, not the local daemon, through C<API::Docker>'s
C<< distribution->exists >> (C<GET /distribution/{name}/json>), using the
credential resolved for C<image> (see L</"Registry credentials">), or an
anonymous request when none applies.
An engine that has no C</distribution> route -- rootless Podman among them --
cannot answer the question at all, and that is treated as a release-stopping
failure rather than as "the tag is free": the release aborts with the
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/GatherAgentContext.pm view on Meta::CPAN
my @res = (
# <name>.local.<ext>: machine-local overrides (settings.local.json,
# skilletor.local.json, CLAUDE.local.md) and their backups (.local.json.bak).
# A leading-dot `.local.<name>.md` is skilletor-installed content and stays.
qr{(?:^|/)[^/]+\.local\.[^/]+$},
qr{(?:^|/)(?:\.credentials|auth)\.json$}, # harness login tokens
qr{(?:^|/)settings\.json$}, # editor/permission config, not agent content
qr{(?:^|/)worktrees/},
qr{(?:^|/)\.DS_Store$},
);
push @res, qr{(?:^|/)\.gitignore$} if $self->prune_gitignore;
lib/Dist/Zilla/Plugin/GatherAgentContext.pm view on Meta::CPAN
the files C<CLAUDE.md>, C<skilletor.json>, C<skilletor.lock.json> and
C<skilletor-rules.md>.
=back
So C<.claude/.credentials.json>, C<.claude/projects/>, C<.claude/todos/>,
C<.claude/statsig/>, C<.claude/local/>, C<.codex/auth.json>,
C<.codex/config.toml> and anything else a harness or a person drops there stay
out, whatever the file is called. This holds for a harness directory named
explicitly through L</dir> and for one met deeper inside a configured tree.
lib/Dist/Zilla/Plugin/GatherAgentContext.pm view on Meta::CPAN
Skilletor-installed agents and rules named C<< .local.<name>.md >> (leading
dot) are content and are kept.
=item *
C<.credentials.json> and C<auth.json> â harness login tokens.
=item *
C<settings.json> â editor and permission configuration, not agent content.
view all matches for this distribution
view release on metacpan or search on metacpan
bin/createrelease.pl view on Meta::CPAN
code fence.
=head1 GITHUB API AUTHENTICATION
The script uses L<Config::Identity::GitHub> to obtain the GitHub API
credentials, and requires a file in your home directory named
F<.github-identity> containing:
login github_username OR github_organization
token github_....
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/GitHub/UploadRelease.pm view on Meta::CPAN
$self->log_debug("$method $url");
$headers //= {};
my ($login, $pass, $otp) = $self->_get_credentials(0);
if ($pass) {
my $basic = encode_base64("$login:$pass", '');
$headers->{Authorization} = "Basic $basic";
}
lib/Dist/Zilla/Plugin/GitHub/UploadRelease.pm view on Meta::CPAN
sub after_release {
my ($self, $archive) = @_;
my $dist_name = $self->zilla->name;
my ($login) = $self->_get_credentials(1);
return unless $login;
my $repo_name = $self->_get_repo_name($login);
my $git_tag_plugin = $self->zilla->plugin_named('Git::Tag') // $self->log_fatal('Plugin Git::Tag not found');
lib/Dist/Zilla/Plugin/GitHub/UploadRelease.pm view on Meta::CPAN
version 0.002
=head1 SYNOPSIS
Configure git with your GitHub credentials:
git config --global github.user LoginName
git config --global github.password GitHubPassword
Alternatively you can install L<Config::Identity> and write your credentials in the (optionally GPG-encrypted) C<~/.github> file as follows:
login LoginName
password GitHubpassword
(if only the login name is set, the password will be asked interactively)
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/GitHub.pm view on Meta::CPAN
isa => 'Maybe[Str]',
lazy => 1,
builder => '_build_login',
);
has _credentials => (
is => 'ro',
isa => 'HashRef',
lazy => 1,
builder => '_build_credentials',
);
#pod =head1 DESCRIPTION
#pod
#pod B<Dist-Zilla-Plugin-GitHub> is a set of plugins for L<Dist::Zilla> intended
lib/Dist/Zilla/Plugin/GitHub.pm view on Meta::CPAN
}
return $login;
}
sub _build_credentials {
my $self = shift;
my ($login, $pass, $token);
$login = $self->_login;
lib/Dist/Zilla/Plugin/GitHub.pm view on Meta::CPAN
}
return { login => $login, pass => $pass, token => $token };
}
sub _has_credentials {
my $self = shift;
return keys %{$self->_credentials};
}
sub _auth_headers {
my $self = shift;
my $credentials = $self->_credentials;
my %headers = ( Accept => 'application/vnd.github.v3+json' );
if ($credentials->{pass}) {
require MIME::Base64;
my $basic = MIME::Base64::encode_base64("$credentials->{login}:$credentials->{pass}", '');
$headers{Authorization} = "Basic $basic";
}
elsif ($credentials->{token}) {
$headers{Authorization} = "token $credentials->{token}";
}
# This can't be done at object creation because we autodetect the
# need for 2FA when GitHub says we need it, so we won't know to
# prompt at object creation time.
if ($self->prompt_2fa) {
my $otp = $self->zilla->chrome->prompt_str(
"GitHub two-factor authentication code for '$credentials->{login}'",
{ noecho => 1 },
);
$headers{'X-GitHub-OTP'} = $otp;
$self->log([ "Using two-factor authentication" ]);
view all matches for this distribution
view release on metacpan or search on metacpan
*.bs
# Testing
cover_db/
pod2htmd.tmp
# Claude Code â commit: skills/, agents/, hooks/, settings.json
# Ignore: local overrides, credentials, session data
.claude/*.local.*
.claude/local/
.claude/.credentials.json
.claude/statsig/
.claude/todos/
.claude/projects/
# karr materialized task view -- never commit
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/NexusRelease.pm view on Meta::CPAN
$self->{'Dist::Zilla'}{plugin}->log(@_);
}
}
has credentials_stash => (
is => 'ro',
isa => 'Str',
default => '%Nexus'
);
has _credentials_stash_obj => (
is => 'ro',
isa => maybe_type( class_type('Dist::Zilla::Stash::Nexus') ),
lazy => 1,
init_arg => undef,
default => sub { $_[0]->zilla->stash_named( $_[0]->credentials_stash ) },
);
sub _credential {
my ( $self, $name ) = @_;
return unless my $stash = $self->_credentials_stash_obj;
return $stash->$name;
}
has username => (
lib/Dist/Zilla/Plugin/NexusRelease.pm view on Meta::CPAN
The Nexus Artefact is set to the Perl distribution name (C<name> in F<dist.ini>, and the version is set to the Perl distribution version.
=head1 ATTRIBUTES
=head2 credentials_stash
This attribute holds the name of a L<Nexus stash|Dist::Zilla::Stash::Nexus>
that will contain the credentials to be used for the upload. By default,
NexusRelease will look for a C<%Nexus> stash.
=head2 username
This is the Nexus user to log in with.
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/PERLANCAR/Authority.pm view on Meta::CPAN
}
}
close $fh or $self->log_fatal( "Unable to close $file - $!" );
$self->log_fatal( 'PAUSE user not found in ~/.pause' );
} else {
$self->log( 'PAUSE credentials not found in "config.ini" or "dist.ini" or "~/.pause", will be using "cpan:<none>" as the AUTHORITY' );
return 'cpan:<none>';
}
}
},
);
lib/Dist/Zilla/Plugin/PERLANCAR/Authority.pm view on Meta::CPAN
=head1 DESCRIPTION
B<Fork note>: This plugin is a fork of L<Dist::Zilla::Plugin::Authority>. When
PAUSE credential is not found, this plugin will set C<$AUTHORITY> to C<<
cpan:<none> >> instead of bailing out. TODO: bail if PAUSE credentials is not
found and we are doing a release (instead of just 'dzil test' or 'dzil build').
The rest is Dist::Zilla::Plugin::Authority's documentation.
This plugin adds the authority data to your distribution. It adds the data to
your modules and metadata. Normally it looks for the PAUSE author id in your
view all matches for this distribution
view release on metacpan or search on metacpan
before, you'll need to replace it with "recurse = 0" in your
dist.ini file.
[BUG FIXES]
- The plugin was ignoring your authentication credentials when
using a remote repository [GitHub #7]. Thanks @hstaugaard.
0.085 2014-01-13 14:48:42 America/Los_Angeles
[BUG FIXES]
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Role/Subversion.pm view on Meta::CPAN
=head1 ATTRIBUTES
=head2 svn_user
Your Subversion user ID. Defaults to the cached credentials for your
distribution's working copy.
=head2 svn_password
Your Subversion password. Defaults to the cached credentials for your
distribution's working copy.
=head2 working_url
URL for the directory currently holding your distribution. Defaults to your
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/UploadToCPAN/WWWPAUSESimple.pm view on Meta::CPAN
use Scalar::Util qw(weaken);
use Try::Tiny;
use namespace::autoclean;
has credentials_stash => (
is => 'ro',
isa => 'Str',
default => '%PAUSE'
);
has _credentials_stash_obj => (
is => 'ro',
isa => maybe_type( class_type('Dist::Zilla::Stash::PAUSE') ),
lazy => 1,
init_arg => undef,
default => sub { $_[0]->zilla->stash_named( $_[0]->credentials_stash ) },
);
sub _credential {
my ($self, $name) = @_;
return unless my $stash = $self->_credentials_stash_obj;
return $stash->$name;
}
sub mvp_aliases {
return { user => 'username' };
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/UploadToGoogleCode.pm view on Meta::CPAN
If loaded, this plugin will allow the F<release> command to upload to Google Code.
=head1 DESCRIPTION
This plugin looks for the Google Code project name in F<dist.ini>, and gets your
Google Code credentials from F<~/.googlecode-identity> (which can be
GnuPG-encrypted; see L<Config::Identity>).
If any configuration is missing, it will prompt you to enter your
username and password during the BeforeRelease phase. Entering a
blank username or password will abort the release.
view all matches for this distribution
view release on metacpan or search on metacpan
0.28 2012-06-14
- Only do post-release stuff if it was a real release
- Require @GitHub 0.22
- bug related to finding a fork's parent repo
- Now uses Config::Identity to get credentials
0.27 2012-05-25
- Add SchwartzRatio plugin
- Allow setting github = 0 to disable GitHub::Meta and GitHub::Update
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/PluginBundle/Author/ETHER.pm view on Meta::CPAN
unless File::Spec->file_name_is_absolute($file);
return {} unless -e $file && -r _;
my $cfg = try {
CPAN::Uploader->read_config_file($file)
} catch {
warn "[\@Author::ETHER] Couldn't load credentials from '$file': $_";
{};
};
return $cfg;
}
view all matches for this distribution
view release on metacpan or search on metacpan
# Claude Code â commit: skills/, agents/, rules/, hooks/, settings.json, skilletor config
# Ignore: local overrides, credentials, session data
# Tracked: shared config & extensibility
!/.claude/
.claude/*
!.claude/settings.json
# Local overrides (machine-specific)
.claude/*.local.*
.claude/local/
# Credentials & session state (never track)
.claude/.credentials.json
.claude/statsig/
.claude/todos/
.claude/projects/
Dist-Zilla-PluginBundle-Author-GETTY-*
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/PluginBundle/Author/GSG.pm view on Meta::CPAN
local $git_tag_plugin->{plugin_name} = 'Git::Tag';
return $self->$orig(@args);
};
sub _get_credentials {
my ($self, $login_only) = @_;
my $creds = $self->_credentials;
# return $creds->{login} if $login_only;
my $otp;
$otp = $self->zilla->chrome->prompt_str(
"GitHub two-factor authentication code for '$creds->{login}'",
view all matches for this distribution
view release on metacpan or search on metacpan
t/dist_zilla_plugin_author_plicease_upload.t view on Meta::CPAN
my(%config) = @_;
my $pause = tempdir( CLEANUP => 1 );
push @keep, $pause;
$pause->child('.pause')->spew_utf8(
$config{no_credentials} ? "" : "user FOOBAR\npassword secret\n"
);
delete $config{no_credentials};
my $tzil = Builder->from_config(
{ dist_root => 'corpus/DZT' },
{
add_files => {
t/dist_zilla_plugin_author_plicease_upload.t view on Meta::CPAN
field file => match qr/DZT-Sample-0\.001\.tar\.gz$/;
field user => 'FOOBAR';
field password => 'secret';
end;
} ],
'uploaded to CPAN with credentials';
note $_ for log_messages($tzil)->@*;
};
subtest 'upload to cpan without credentials' => sub {
@uploaded = ();
my $tzil = tzil( no_credentials => 1 );
$tzil->chrome->set_response_for('upload to CPAN?' => 'y');
$tzil->chrome->set_response_for('PAUSE username: ' => '');
# before_release is a no-op, so missing credentials are not
# fatal, they are just logged during release.
ok lives { $tzil->release }, 'release does not die' or note $@;
is \@uploaded, [], 'nothing uploaded';
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/Codeberg.pm view on Meta::CPAN
has repo => (
is => 'ro',
isa => 'Maybe[Str]',
);
has _credentials => (
is => 'ro',
isa => 'HashRef',
lazy => 1,
builder => '_build_credentials',
);
has _login => (
is => 'ro',
isa => 'Maybe[Str]',
lib/Dist/Zilla/Plugin/Codeberg.pm view on Meta::CPAN
}
return $login;
}
sub _build_credentials {
my $self = shift;
my ( $login, $token );
$login = $self->_login;
lib/Dist/Zilla/Plugin/Codeberg.pm view on Meta::CPAN
}
return { login => $login, token => $token };
}
sub _has_credentials {
my $self = shift;
return keys %{ $self->_credentials };
}
sub _auth_headers {
my $self = shift;
my $credentials = $self->_credentials;
my %headers = ();
if ( $credentials->{token} ) {
$headers{'Authorization'} = 'token ' . $credentials->{token};
}
return \%headers;
}
view all matches for this distribution
view release on metacpan or search on metacpan
# Claude Code â commit: skills/, agents/, rules/, hooks/, settings.json
# Ignore: local overrides, credentials, session data
.claude/*.local.*
.claude/local/
.claude/.credentials.json
.claude/statsig/
.claude/todos/
.claude/projects/
# karr materialized task view -- never commit
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Plugin/GitLab.pm view on Meta::CPAN
has repo => (
is => 'ro',
isa => 'Maybe[Str]',
);
has _credentials => (
is => 'ro',
isa => 'HashRef',
lazy => 1,
builder => '_build_credentials',
);
has _login => (
is => 'ro',
isa => 'Maybe[Str]',
lib/Dist/Zilla/Plugin/GitLab.pm view on Meta::CPAN
}
return $login;
}
sub _build_credentials {
my $self = shift;
my ( $login, $token );
$login = $self->_login;
lib/Dist/Zilla/Plugin/GitLab.pm view on Meta::CPAN
}
return { login => $login, token => $token };
}
sub _has_credentials {
my $self = shift;
return keys %{ $self->_credentials };
}
sub _auth_headers {
my $self = shift;
my $credentials = $self->_credentials;
my %headers = ();
if ( $credentials->{token} ) {
$headers{'PRIVATE-TOKEN'} = $credentials->{token};
}
return \%headers;
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Role/EnsureStash.pm view on Meta::CPAN
This is a L<Dist::Zilla> role designed to ensure that if a plugin needs access
to a stash, and that stash does not already exist, then it is automatically
created and returned.
This is more intended for helping plugins that need to share common data do so
via stashes, rather than specific information (e.g. PAUSE credentials and the
like). As such, the stash instances created here are expected to largely be
able to do their thing without much (preferably any) external input.
=head1 REQUIRED METHODS
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Stash/OnePasswordLogin.pm view on Meta::CPAN
package Dist::Zilla::Stash::OnePasswordLogin 0.002;
# ABSTRACT: get login credentials from 1Password
#pod =head1 OVERVIEW
#pod
#pod This is a stash class, one of the less-often seen kinds of Dist::Zilla
#pod components. It's expected that you'll use it for things that expect a "Login"
lib/Dist/Zilla/Stash/OnePasswordLogin.pm view on Meta::CPAN
=encoding UTF-8
=head1 NAME
Dist::Zilla::Stash::OnePasswordLogin - get login credentials from 1Password
=head1 VERSION
version 0.002
view all matches for this distribution
view release on metacpan or search on metacpan
Revision history for Dist-Zilla-Stash-PAUSE-Encrypted
0.003 2012-07-13 11:42:38 America/Los_Angeles
- replace BUILD with identity. This lets us lazy-load our credentials
0.002 2012-07-07 11:17:44 America/Los_Angeles
- change doc -- don't alter UploadToCPAN's credential_stash option, rename
our stash
view all matches for this distribution
view release on metacpan or search on metacpan
lib/Dist/Zilla/Util/RoleDB/Items/Core.pm view on Meta::CPAN
_add_entry( q[-MutableFile] => q[something that can act like a file with changeable contents] );
_add_entry( q[-PPI] => q[a role for plugins which use PPI] );
_add_entry( q[-PluginBundle::Easy] => q[something that bundles a bunch of plugins easily] );
_add_entry( q[-Plugin] => q[something that gets plugged in to Dist::Zilla] );
_add_entry( q[-Stash::Authors] => q[a stash that provides a list of author strings] );
_add_entry( q[-Stash::Login] => q[a stash with username/password credentials] );
_add_entry( q[-Stash] => q[something that stores options or data for later reference] );
_add_entry( q[-StubBuild] => q[provides an empty BUILD methods] );
_add_entry( q[-TextTemplate] => q[something that renders a Text::Template template string] );
return;
}
view all matches for this distribution
view release on metacpan or search on metacpan
lib/DocRaptor.pm view on Meta::CPAN
sub create
{
my $self = shift;
my $options = shift; # a DocRaptor::DocOptions object
my %request_options = $self->_coerce_options_to_request_format( $options );
$request_options{'user_credentials'} = $self->api_key;
my $request = POST( $DOC_RAPTOR_URL, [%request_options] );
return $self->_user_agent->request($request);
}
sub _user_agent
view all matches for this distribution
view release on metacpan or search on metacpan
CONTRIBUTING.md view on Meta::CPAN
Fork the [GitHub repository](https://github.com/aspeer/pm-Docbook-Convert),
create a topic branch, keep changes focused, and submit a GitHub pull request.
Run `perl Makefile.PL`, `make test`, and `make disttest` before submitting.
Pandoc is required for the conversion integration tests.
Do not include credentials or private data. Report potential vulnerabilities
privately as described in [SECURITY.md](SECURITY.md).
view all matches for this distribution
view release on metacpan or search on metacpan
share/specs/v1.25.yaml view on Meta::CPAN
}
```
The `serveraddress` is a domain/IP without a protocol. Throughout this structure, double quotes are required.
If you have already got an identity token from the [`/auth` endpoint](#operation/SystemAuth), you can just pass this instead of credentials:
```
{
"identitytoken": "9cbaf023786cd7..."
}
share/specs/v1.25.yaml view on Meta::CPAN
$ref: "#/definitions/ErrorResponse"
tags: ["Image"]
/auth:
post:
summary: "Check auth configuration"
description: "Validate credentials for a registry and, if available, get an identity token for accessing the registry without password."
operationId: "SystemAuth"
consumes: ["application/json"]
produces: ["application/json"]
responses:
200:
share/specs/v1.25.yaml view on Meta::CPAN
type: "integer"
- name: "registryAuthFrom"
in: "query"
type: "string"
description: "If the X-Registry-Auth header is not specified, this
parameter indicates where to find registry authorization credentials. The
valid values are `spec` and `previous-spec`."
default: "spec"
- name: "X-Registry-Auth"
in: "header"
description: "A base64-encoded auth configuration for pulling from private registries. [See the authentication section for details.](#section/Authentication)"
view all matches for this distribution
view release on metacpan or search on metacpan
examples/gce_sa_explicit.pl view on Meta::CPAN
use Docker::Registry::GCE;
use Docker::Registry::Auth::GCEServiceAccount;
my $ce = $ENV{ CLIENT_EMAIL } // die "Please set ENV CLIENT_EMAIL";
my $pk = $ENV{ PRIVATE_KEY } // die "Please set ENV PRIVATE_KEY";
#passing a repo is because sometimes your credentials don't let you list
#the repositories, but you can see the tags of a repo if you know its name
my $repo = $ARGV[0];
my $sa = Docker::Registry::Auth::GCEServiceAccount->new(
client_email => $ce,
view all matches for this distribution