Thu Apr 28 18:04:16 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.8 - new README.md]:
* README-BUILD.md: renamed from README.md
* README.md: new
* Makefile.am: build rule for above
Mon Apr 25 09:55:14 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.7 - unit test fails on perl >= 5.17]:
* src/main/perl/lib/Amazon/Credentials.pm.in
(safe_dumper): less greedy to get all instances of credentials
(get_creds_from_env): @ENV{@env}
* src/main/perl/UnitTestSetup.pm
(__DATA__): add more profiles
* src/main/perl/t/13-env.t
Sun Apr 24 06:51:16 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.6 - more unit test fun]:
* VERSION: bump
* src/main/perl/lib/Amazon/Credentials.pm.in
(_init_encryption): test for Crypt::Cipher::AES too!
* .gitignore: just *.pm in src/main/perl/lib
* bootstrap: rebuild on version bump
* src/main/perl/lib/Amazon/Credentials/UnitTests.pm.in: new
* configure.ac: do not treat warnings as errors (pattern rule)
* cpan/test-requires: add Test::Without::Module
* src/main/perl/UnitTestSetup.pm: new
* src/main/perl/t/00-credentials.t: use UnitTestSetup
* src/main/perl/t/01-credentials.t: likewise
* src/main/perl/t/02-credentials.t: likewise
* src/main/perl/t/03-container.t: likewise
* src/main/perl/t/04-process.t: likewise
* src/main/perl/t/05-format.t: likewise
* src/main/perl/t/06-security.t: likewise
* src/main/perl/t/07-encryption.t: likewise
* src/main/perl/t/09-live-credentials.t: likewise
* src/main/perl/t/10-logging.t: likewise
* src/main/perl/t/11-order.t: likewise
* src/main/perl/t/12-error.t: likewise
Sun Apr 24 05:01:18 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.5 - CPAN only release, no changes]:
Wed Apr magit20 14:55:50 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.4 - missing unit tests]:
* VERSION: bump
* src/main/perl/lib/Amazon/Credentials.pm.in
- print_error, raise_error, error
- use our instead of use vars
- re-arrange subs in logical sections
- some refactoring for code clarity (formatting)
- use decode_json, encode_json
- minor refactoring, more constants
(get_creds_from_env):new
(set_credentials)
- respect print_error, raise_error setting
* src/main/perl/t/12-error.t: new
* .gitignore: +prove.sh.*, test-suite.log
Mon Apr 18 14:41:29 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.3 - unit test fixes]:
* VERSION: bump
* bootstrap: configure after bump
* .gitignore: -test-requires
* cpan/test-requires: new (Module::Loaded)
* cpan/buildspec.yml
- test-requires
* cpan/Makefile.am
(CLEANFILES): -test-requires
Sun Apr 17 09:18:12 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.2 - unit test fixes]:
* VERSION: bump
* src/main/perl/t/07-encryption.t
- use Test::Without::Module instead of Devel::Hide
- skip all tests if no Crypt::CBC available
- use -key or -pass to support older Crypt::CBC modules
* src/main/perl/t/01-credentials.t: bail on error
* src/main/perl/lib/Amazon::Credentials.pm.in
- pod tweaks
(_crypt): use -key -pass to support older Crypt::CBC versions
* cpan/requires: new
* cpan/buildspec.yml: core_modules: no
Thu Apr 14 09:48:53 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.1 - pod fixes]:
* NEWS.md: update
* src/main/perl/lib/Amazon/Credentials.pm.in
- pod fixes
Thu Apr 14 08:18:59 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.0 - credential encryption, IMDSv2 support]:
* src/main/perl/t/11-order.t: new
* src/main/perl/get-creds-from-process
- create more realistic payload
* src/main/perl/lib/Amazon/Credentials.pm.in
- pod improvements
- export create_passkey
(set_default_logger): new
(_init_logger): use above
(_set_defaults)
- set default order from split string
- make sure order is array ref
- validate search order
- do not use debug flag to set insecure flag
(get_creds_from_ini_file)
- test 'aws_access_key_id', not keys
(reset_credentials)
- add flag to regenerate credentials
* src/main/perl/t/01-credentials.t
- add test for region
- refactored
* src/main/perl/t/02-credentials.t
- refactored
- perltidy
* src/main/perl/t/03-container.t: likewise
* src/main/perl/t/04-process.t: likewise
* src/main/perl/t/05-format.t: likewise
* src/main/perl/t/06-security.t: likewise
* src/main/perl/t/07-encryption.t
- likewise
- breakout subtest 'do not cache credentials'
- add test for rotating credentials w/custom passkey
- order tests logically
- test default and custom ciphers
* src/main/perl/t/08-imdsv2.t
- use instance role
* src/main/perl/t/09-live-credentials.t
- subtest 'get real credentials from role'
- subtest 'get real credentials from profile'
* src/main/perl/t/11-order.t: new
* src/main/perl/t/100logging.t: test for default message changed
* README-TESTING.md: new
* src/main/perl/Makefile.am
(CLEANFILES): +prove.sh
Thu Apr 7 08:46:59 2022 Rob Lauer <rlauer6@comcast.net>
[1.1.0 - credential encryption, IMDSv2 support]:
* NEWS.md: notes on enhancements in this release
* VERSION: bump minor version
* src/main/perl/lib/Amazon/Credentials.pm.in
- pod updates
- update encrypted keys with prefix '_'
(new)
- use debug flag set insecure mode for full debug output
- default mode is to encrypt credentials if Crypt::CBC installed
- add cache attribute to enable/disable cacheing behavior
- just check if logger is ref, not 'CODE'
(credential_keys)
- fetch credentials if cacheing disabled
- delete token related members if no token
(get_default_region)
- use container metadata if executing in container
- add IMDSv2 token for EC2
(find_credentials)
- log message
- use new setter/getters to enforce encryption
(get_creds_from_container)
- don't store serialized credentials ($creds->{serialized})
(get_creds_from_role)
- likewise
- add headers for IMDSv2
(get_creds_from_process)
- refactored
(get_creds_from_ini_file)
- refactored
- set region from section
* src/main/perl/t/01-credentials.t
- use new getters
* src/main/perl/t/03-container.t
- perltidy
- set ECS_CONTAINER_METADATA_URI_V4
(src/main/perl/t/04-process.t): test region
(get_aws_access_key_id): new
(get_aws_secret_access_key): new
(get_creds_from_file): removed
(reset_credentials): new
(rotate_credentials): new
(safe_dumper): renamed from dump_ini_file
(set_aws_access_key_id): new
(set_aws_secret_access_key): new
(set_token): new
(create_passkey): new
(_create_metadata_url): new
(_crypt): new
(_decrypt): new
(_encrypt): new
(_fetch_passkey): new
(_init_encryption): new
* src/main/perl/t/07-encryption.t: new
* src/main/perl/t/08-imdsv2.t: new
* src/main/perl/t/09-live-credentials.t: new
* src/main/perl/t/10-logging.t: new
* README-TESTING.md: new
* cpan/requires: new
* src/main/perl/get-credentials-from-process
- use real expiration date
Mon Feb 7 08:00:07 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.19: log security]:
* VERSION: bump
* src/main/perl/lib/Amazon/Credentials.pm.in
- pod tweaks and additions (SECURITY)
- only need perl 5.10?
- + insecure option
(new): output warning if insecure mode
(dump_ini_file): new
(get_creds_from_ini_file): use above method
(dump_response): new
(get_creds_from_role): use above
(get_creds_from_container): likewise
(format_credentials): q{}
* src/main/perl/t/06-security.t: new
Tue Feb 1 16:23:26 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.18: debugging]:
* VERSION: bump
* src/main/perl/lib/Amazon/Credentials.pm.in
- add more debug messages
(new): use DEBUG environment variable as documented
(get_creds_from_ini_file): .aws/config
* src/main/perl/t/04-process.t: [profile foo]
Tue Feb 1 12:06:36 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.17: unit tests for new methods]:
* src/main/perl/lib/Amazon/Credentials.pm.in
(format_credentials): don't join on "\n"
* src/main/perl/t/05-format.t
- new unit test for formattingmethods
Tue Feb 1 08:41:42 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.17: perlcritic, format, as_string, credential_keys]:
* src/main/perl/lib/Amazon/Credentials.pm.in
- varioius "suggestions" from perlcritic
(as_string): new
(format): new
(credential_keys): new
(find_credentials): refactor
(get_creds_from_ini_file): refactor
* VERSION: bump
* .perlcriticrc: new
* README.md: update build docs
* .gitigmore: + cpan/upload-instructions
[distcheck]:
* Makefile.am: distcheck
* src/main/perl/Makefile.am: likewise
* cpan/Makefile.am: added buildspec.yml to dist
Mon Jan 31 07:06:15 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.16]:
* cpan/extra-files: get-creds-from-process
* src/main/perl/Makefile.am
- add 03-, 04- tests to list
- fix make check from root
* src/main/perl/lib/Makefile.am: tests moved up one dir
* Makefile.am: make cpan
Sun Jan 30 10:06:07 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.16]:
* VERSION: bump
Sat Jan 29 11:53:12 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.16 Config::Tiny]:
* src/main/perl/lib/Amazon/Credentials.pm.in
- some refactoring
- use Config::Tiny
(find_credentials)
- use Config::Tiny
(get_creds_from_ini_file): new
(get_creds_from_file): moved to sub from inline (deprecated)
(get_creds_from_process): rename from get_credentials_from_process
* src/main/perl/t/01-credentials.t: add default profile
* src/main/perl/t/02-credentials.t: use profile for test
* src/main/perl/t/04-process.t: new
* src/main/perl/get-creds-from-process: new
Sat Jan 29 06:53:47 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.15 credential process]:
* VERSION: bump
* src/main/perl/lib/Amazon/Credentials.pm.in
- use English;
- move pod to bottom
(find_credentials)
- set source if creds found in environment
- add check for credentials from process (credential_process=)
Sat Jan 15 05:52:08 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.14]:
- no commit, pushed to CPAN, 1.0.13 as new version
Sat Jan 15 05:37:48 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.13: log cleanup]:
* src/main/perl/lib/Amazon/Credentials.pm.in
- remove some log messages
(new)
- add warning if debug and no logger
- check if passed logger is code ref
Mon Jan 10 18:20:27 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.12: refactoring]:
* VERSION: bump
* src/main/perl/Amazon/Credentials.pm.in
- refactoring, remove buggy foreach () case construct
- perlcritic mitigations
(Amazon::Credentials:Logger::debug): return if ! debug level
(new): use AWS_DEFAULT_REGION
* src/main/perl/t/03-container.t: new test for container
Sat Jan 8 09:44:57 2022 Rob Lauer <rlauer6@comcast.net>
[1.0.11]:
* .gitignore: add cpan/local
* configure.ac: use VERSION file
* VERSION: new
* bootstrap: bump
[get_creds_from_container]:
* src/main/perl/lib/Amazon/Credentials.pm.in
(get_creds_from_container): $@ used but not in eval
(refresh_token): check for ref AND keys
Wed Sep 15 16:09:27 2021 Rob Lauer <rlauer6@comcast.net>
[1.0.10-5]:
* configure.ac: bump release
* src/main/perl/lib/Amazon/Credentials.pm.in
- pod - default order
(find_credentials): check if profile defined and true
Fri Mar 5 14:54:01 2021 Rob Lauer <rlauer6@comcast.net>
[1.0.10-4]:
* buildspec.yml
- 0.2
- add YRB_EXTRA for repo update notification
* README.md: badge
Sun Jan 27 04:03:28 2019 Rob Lauer <rlauer6@comcast.net>
[1.0.10-3]:
* src/main/perl/lib/Amazon/Credentials.pm.in: pod changes
* configure.ac: bump minor version
Sun Jan 27 03:27:22 2019 Rob Lauer <rlauer6@comcast.net>
[1.0.10-2]:
* cpan/Makfile.am: .PHONY
* src/main/perl/lib/Amazon/Credentials.pm.in: pod changes
* configure.ac: bump minor version
Tue Dec 11 12:53:58 2018 Rob Lauer <rlauer6@comcast.net>
[1.0.10-1]:
* configure.ac: bump release
* cpan/Makefile.am: rename tarball for minor release only
* src/main/perl/t/02-credentials.t: GMT, not UTC
* README.md: mention 'make cpan'
* cpan/extra-files: new
Mon Dec 10 13:44:31 2018 Rob Lauer <rlauer6@comcast.net>
[1.0.10]:
* ChangeLog: new
* bootstrap: new
* configure.ac
- bump minor release
- add cpan/Makefile
* cpan/Makefile.am: new
* Makfile.am: add path above
* cpan/buildspec.yml
- don't build from git repo, build local
- use relative path for above
* src/main/perl/lib/Amazon/Credentials.pm.in
(_iso8601_to_time): always run strptime() in GMT