{"id":18779474,"url":"https://github.com/zostay/aws-session","last_synced_at":"2026-03-19T06:20:43.067Z","repository":{"id":66557973,"uuid":"124834728","full_name":"zostay/AWS-Session","owner":"zostay","description":"Tools for managing AWS configuration and credentials in Perl 6","archived":false,"fork":false,"pushed_at":"2019-03-15T19:33:59.000Z","size":52,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-21T06:11:53.018Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Perl 6","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"artistic-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/zostay.png","metadata":{"files":{"readme":"README.md","changelog":"Changes","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-03-12T04:45:05.000Z","updated_at":"2023-11-20T22:37:04.000Z","dependencies_parsed_at":null,"dependency_job_id":"6021e2d1-c309-49d2-9688-568e1bb9a42c","html_url":"https://github.com/zostay/AWS-Session","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"purl":"pkg:github/zostay/AWS-Session","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zostay%2FAWS-Session","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zostay%2FAWS-Session/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zostay%2FAWS-Session/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zostay%2FAWS-Session/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/zostay","download_url":"https://codeload.github.com/zostay/AWS-Session/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/zostay%2FAWS-Session/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28759426,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-25T20:56:06.009Z","status":"ssl_error","status_checked_at":"2026-01-25T20:54:48.203Z","response_time":113,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-07T20:20:16.841Z","updated_at":"2026-01-25T21:44:15.576Z","avatar_url":"https://github.com/zostay.png","language":"Perl 6","funding_links":[],"categories":[],"sub_categories":[],"readme":"NAME\n====\n\nAWS::Session - Common data useful for accessing and configuring AWS APIs\n\nSYNOPSIS\n========\n\n    use AWS::Session;\n\n    my $session      = AWS::Session.new(\n        profile =\u003e 'my-profile',\n    );\n\n    my $profile      = $session.profile;\n    my $region       = $session.region;\n    my $data-path    = $session.data-path;\n    my $config-file  = $session.config-file;\n    my $ca-bundle    = $session.ca-bundle;\n    my %api-versions = $session.api-versions;\n    my $cred-file    = $session.credentials-file;\n    my $timeout      = $session.metadata-service-timeout;\n    my $attempts     = $session.metadata-service-num-attempts;\n\n    # Read the AWS configuration file\n    my %config       = $session.get-configuration;\n    my %profile-conf = $session.get-profile-configuration('default');\n    my %current-conf = $session.get-current-configuration;\n\n    # Read the AWS credentials file\n    my %cred         = $session.get-credentials;\n    my %profile-cred = $session.get-profile-credentials('default');\n    my %current-cred = $session.get-current-credentials;\n\nDESCRIPTION\n===========\n\nAWS clients share some common configuration data. This is a configurable module for loading that data.\n\nATTRIBUTES\n==========\n\nAny attributes provided will override any configuration values found on the system through the environment, configuration, or defaults.\n\nprofile\n-------\n\nThe configuration files are in INI format. These are broken up into sections. Each section is a profile. This way you can have multiple AWS configurations, each with its own settings and credentials.\n\nregion\n------\n\nThis is the AWS region code to use.\n\ndata-path\n---------\n\nThe botocore system uses data models to figure out how to interact with AWS APIs. This is the path where additional models can be loaded.\n\nconfig-file\n-----------\n\nThis is the location of the AWS configuration file.\n\nca-bundle\n---------\n\nThis is the location of the CA bundle to use.\n\napi-versions\n------------\n\nThis is a hash of API versions to prefer for each named API.\n\ncredentials-file\n----------------\n\nThis is the location of the credentials file.\n\nmetadata-service-timeout\n------------------------\n\nThis is the timeout to use with the metadata service.\n\nmetadata-service-num-attempts\n-----------------------------\n\nThis is the number of attempts to make when using the metadata service.\n\nsession-configuration\n---------------------\n\nThis is a map of configuration variable names to [AWS::Session::Default](AWS::Session::Default) objects, which define how to configure them.\n\nHELPERS\n=======\n\nAWS::Session::Default\n---------------------\n\nThis is a basic structural class. All attributes are optional.\n\n### ATTRIBUTES\n\n#### config-file\n\nThis is the name of the variable to use when loading the value from the configuration file.\n\n#### env-var\n\nThis is an array of names of the environment variable to use for the value.\n\n#### default-value\n\nThis is the default value to fallback to.\n\n#### converter\n\nThis is a function that will convert values from the configuration file or environment variable to the appropriate object.\n\nMETHODS\n=======\n\nget-configuration\n-----------------\n\n    method get-configuration($config-file?, :$reload?) returns Hash\n\nReturns the full contents of the configuration as a hash of hashes. Normally, this method caches the configuration. Setting the `:reload` flag will force the configuration cache to be ignored.\n\nget-profile-configuration\n-------------------------\n\n    method get-profile-configuration(Str:D $profile, :$config-file?) returns Hash\n\nReturns the named profile configuration.\n\nget-current-configuration\n-------------------------\n\n    method get-current-configuration() returns Hash\n\nReturns the configuration for the current profile.\n\nget-credentials\n---------------\n\n    method get-credentials($credentials-file?) returns Hash\n\nReturns the full contents of the credentials file as a hash of hashes. Unlike configuration, the contents of this file is not cached.\n\nget-profile-credentials\n-----------------------\n\n    method get-profile-credentials(Str:D $profile, :$credentials-file?) returns Hash\n\nReturns the named profile credentials.\n\nget-current-credentials\n-----------------------\n\n    method get-current-credentials() returns Hash\n\nReturns the credentials for the current profile.\n\nget-config-variable\n-------------------\n\n    method get-config-variable(\n        Str $logical-name,\n        Bool :$from-instance = True,\n        Bool :$from-env = True,\n        Bool :$from-config = True,\n    )\n\nLoads the configuration named variable from the current configuration. This is loaded from the configuration file, environment, or whatever according to the default set in `session-configuration`. Returns `Nil` if no such configuration is defined for the given `$logical-name`.\n\nThe boolean flags are used to select which methods will be consulted for determining the variable value.\n\n  * from-instance When True, the local instance variable will be checked.\n\n  * from-env When True, the process environment variables will be searched for the value.\n\n  * from-config When True, the shared configuration file will be consulted for the value.\n\nThe value will be pulled in the order listed above, with the first value found being the one chosen.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzostay%2Faws-session","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fzostay%2Faws-session","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fzostay%2Faws-session/lists"}