{"id":32388765,"url":"https://github.com/data-integrations/ftp-copy-action","last_synced_at":"2026-04-04T00:05:04.775Z","repository":{"id":18757069,"uuid":"84879336","full_name":"data-integrations/ftp-copy-action","owner":"data-integrations","description":"Action plugin for copying data from a FTP/SFTP locations","archived":false,"fork":false,"pushed_at":"2023-02-18T01:02:50.000Z","size":63,"stargazers_count":2,"open_issues_count":3,"forks_count":2,"subscribers_count":34,"default_branch":"develop","last_synced_at":"2024-04-16T07:44:18.017Z","etag":null,"topics":["cask-marketplace","cdap","cdap-plugin","copy","ftp"],"latest_commit_sha":null,"homepage":"http://docs.cask.co/cdap","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/data-integrations.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null}},"created_at":"2017-03-13T22:09:22.000Z","updated_at":"2023-01-17T13:26:01.000Z","dependencies_parsed_at":"2023-01-11T20:29:45.304Z","dependency_job_id":null,"html_url":"https://github.com/data-integrations/ftp-copy-action","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/data-integrations/ftp-copy-action","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/data-integrations%2Fftp-copy-action","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/data-integrations%2Fftp-copy-action/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/data-integrations%2Fftp-copy-action/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/data-integrations%2Fftp-copy-action/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/data-integrations","download_url":"https://codeload.github.com/data-integrations/ftp-copy-action/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/data-integrations%2Fftp-copy-action/sbom","scorecard":{"id":324039,"data":{"date":"2025-08-11","repo":{"name":"github.com/data-integrations/ftp-copy-action","commit":"959d043d68ddb7fae51dc911fe7f7fe337a36897"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5,"checks":[{"name":"Code-Review","score":7,"reason":"Found 13/17 approved changesets -- score normalized to 7","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Maintained","score":0,"reason":"project is archived","details":["Warn: Repository is archived."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"License","score":0,"reason":"license file not detected","details":["Warn: project does not have a license file"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 26 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-18T02:03:59.054Z","repository_id":18757069,"created_at":"2025-08-18T02:03:59.054Z","updated_at":"2025-08-18T02:03:59.054Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31382355,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-03T23:20:52.058Z","status":"ssl_error","status_checked_at":"2026-04-03T23:20:51.675Z","response_time":107,"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":["cask-marketplace","cdap","cdap-plugin","copy","ftp"],"created_at":"2025-10-25T03:55:29.033Z","updated_at":"2026-04-04T00:05:04.766Z","avatar_url":"https://github.com/data-integrations.png","language":"Java","readme":"# FTP Copy Plugins\n\n[![cm-available](https://cdap-users.herokuapp.com/assets/cm-available.svg)](https://docs.cdap.io/cdap/current/en/integrations/cask-market.html)\n![cdap-action](https://cdap-users.herokuapp.com/assets/cdap-action.svg)\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://opensource.org/licenses/Apache-2.0)\n[![Join CDAP community](https://cdap-users.herokuapp.com/badge.svg?t=wrangler)](https://cdap-users.herokuapp.com?t=1)\n\nFTP Copy Plugins contain the following two action plugins:\n* [FTP Copy](docs/FTPCopy-action.md) - Plugin for copying file(s) from FTP locations.\n* [FTP Put](docs/FTPPut-action.md) - Plugin for uploading file(s) to FTP server.\n\n## Build\n\nTo build your plugins:\n\n    mvn clean package\n    \nYou can also build without running tests: \n\n    mvn clean package -DskipTests\n\nThe build will create a .jar and .json file under the ``target`` directory.\nThese files can be uploaded to CDAP to deploy your plugins.\n\n## UI Integration\n\nThe CDAP Pipelines UI displays each plugin property as a simple textbox. To customize how the plugin properties\nare displayed in the UI, you can place a configuration file in the ``widgets`` directory.\nThe file must be named following a convention of ``[plugin-name]-[plugin-type].json``.\n\nSee [Plugin Widget Configuration](http://docs.cdap.io/cdap/current/en/hydrator-manual/developing-plugins/packaging-plugins.html#plugin-widget-json)\nfor details on the configuration file.\n\nThe UI will also display a reference doc for your plugin if you place a file in the ``docs`` directory\nthat follows the convention of ``[plugin-name]-[plugin-type].md``.\n\nWhen the build runs, it will scan the ``widgets`` and ``docs`` directories in order to build an appropriately\nformatted .json file under the ``target`` directory. This file is deployed along with your .jar file to add your\nplugins to CDAP.\n\n## Deployment\n\nYou can deploy your plugins using the CDAP CLI:\n\n    \u003e load artifact \u003ctarget/plugin.jar\u003e config-file \u003ctarget/plugin.json\u003e\n\nFor example, if your artifact is named 'example-plugins-1.0.0':\n\n    \u003e load artifact target/example-plugins-1.0.0.jar config-file target/example-plugins-1.0.0.json\n    \n\n## Need Help?\n\n### Mailing Lists\n\nCDAP User Group and Development Discussions:\n\n- [cdap-user](https://groups.google.com/d/forum/cdap-user)\n\nThe *cdap-user* mailing list is primarily for users using the product to develop\napplications. You can expect questions from users, release announcements, and any other\ndiscussions that we think will be helpful to the users.\n\n- [cdap-dev](https://groups.google.com/d/forum/cdap-dev)\n\nThe *cdap-dev* mailing list is essentially for developers actively working\non the product, and should be used for all our design, architecture and technical\ndiscussions moving forward. This mailing list will also receive all JIRA and GitHub\nnotifications.\n\n### IRC Channel\n\nCDAP IRC Channel: #cdap on [irc.freenode.net](http://irc.freenode.net)\n\n\n## License and Trademarks\n\nCopyright © 2015-2019 Cask Data, Inc.\n\nLicensed under the Apache License, Version 2.0 (the \"License\"); you may not use this file except\nin compliance with the License. You may obtain a copy of the License at\n\nhttp://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software distributed under the\nLicense is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND,\neither express or implied. See the License for the specific language governing permissions\nand limitations under the License.\n\nCask is a trademark of Cask Data, Inc. All rights reserved.\n\nApache, Apache HBase, and HBase are trademarks of The Apache Software Foundation. Used with\npermission. No endorsement by The Apache Software Foundation is implied by the use of these marks.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdata-integrations%2Fftp-copy-action","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdata-integrations%2Fftp-copy-action","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdata-integrations%2Fftp-copy-action/lists"}