{"id":32211924,"url":"https://github.com/ryan-lang/web-assetlib-outputengine-s3","last_synced_at":"2025-10-22T06:56:38.365Z","repository":{"id":56830708,"uuid":"86527975","full_name":"ryan-lang/Web-AssetLib-OutputEngine-S3","owner":"ryan-lang","description":"AWS S3 output engine for Web::AssetLib","archived":false,"fork":false,"pushed_at":"2017-08-31T01:09:52.000Z","size":91,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-10-22T06:56:30.535Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Perl","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ryan-lang.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}},"created_at":"2017-03-29T02:11:17.000Z","updated_at":"2017-03-29T02:14:34.000Z","dependencies_parsed_at":"2022-09-09T18:01:25.365Z","dependency_job_id":null,"html_url":"https://github.com/ryan-lang/Web-AssetLib-OutputEngine-S3","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"purl":"pkg:github/ryan-lang/Web-AssetLib-OutputEngine-S3","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryan-lang%2FWeb-AssetLib-OutputEngine-S3","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryan-lang%2FWeb-AssetLib-OutputEngine-S3/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryan-lang%2FWeb-AssetLib-OutputEngine-S3/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryan-lang%2FWeb-AssetLib-OutputEngine-S3/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ryan-lang","download_url":"https://codeload.github.com/ryan-lang/Web-AssetLib-OutputEngine-S3/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ryan-lang%2FWeb-AssetLib-OutputEngine-S3/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":280395519,"owners_count":26323517,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-22T02:00:06.515Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":"2025-10-22T06:56:32.834Z","updated_at":"2025-10-22T06:56:38.352Z","avatar_url":"https://github.com/ryan-lang.png","language":"Perl","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NAME\n\nWeb::AssetLib::OutputEngine::S3 - allows exporting an asset or bundle to an AWS S3 Bucket\n\nOn first usage, a cache will be generated of all files in the bucket. This way, we know\nwhat needs to be uploaded and what's already there.\n\n# SYNOPSIS\n\n    my $library = My::AssetLib::Library-\u003enew(\n        output_engines =\u003e [\n            Web::AssetLib::OutputEngine::S3-\u003enew(\n                access_key  =\u003e 'AWS_ACCESS_KEY',\n                secret_key  =\u003e 'AWS_SECRET_KEY',\n                bucket_name =\u003e 'S3_BUCKET_NAME',\n                region      =\u003e 'S3_BUCKET_REGION'\n            )\n        ]\n    );\n\n    $library-\u003ecompile( ..., output_engine =\u003e 'S3' );\n\n# USAGE\n\nThis is an output engine plugin for [Web::AssetLib](https://metacpan.org/pod/Web::AssetLib).\n\nInstantiate with `access_key`, `secret_key`, `bucket_name`, \nand `region` arguments, and include in your library's output engine list.\n\n# PARAMETERS\n\n## access\\_key\n\n## secret\\_key\n\nAWS access \u0026 secret keys. Must have `List` and `Put` permissions for destination bucket. \nRequired.\n\n## bucket\\_name\n\nS3 bucket name. Required.\n\n## region\n\nAWS region name of the bucket. Required.\n\n## region\n\nAWS region name of the bucket\n\n## link\\_url\n\nUsed as the base url of any asset that gets exported to S3. Make sure it's public!\nYour CDN may go here.\n\n## object\\_expiration\\_cb\n\nProvide a coderef used to calculate the Expiration header. Currently, \nno arguments are passed to the callback. Defaults to:\n\n    sub {\n        return DateTime-\u003enow( time_zone =\u003e 'local' )-\u003eadd( years =\u003e 1 );\n    };\n\n# SEE ALSO\n\n[Web::AssetLib](https://metacpan.org/pod/Web::AssetLib)\n[Web::AssetLib::OutputEngine](https://metacpan.org/pod/Web::AssetLib::OutputEngine)\n\n# AUTHOR\n\nRyan Lang \u003crlang@cpan.org\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryan-lang%2Fweb-assetlib-outputengine-s3","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fryan-lang%2Fweb-assetlib-outputengine-s3","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fryan-lang%2Fweb-assetlib-outputengine-s3/lists"}