This is an automated email from the ASF dual-hosted git repository. dklco pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/sling-aggregator.git
commit 048a3a8f854f7dadb30bab3d323e8dccbc07352c Author: Dan Klco <[email protected]> AuthorDate: Thu Jun 28 12:12:38 2018 -0400 Adding the scripts to aggregator for SLING-7684 --- README.md | 31 ++++- Sling-Repos.csv | 325 +++++++++++++++++++++++++++++++++++++++++++ add-badges.sh | 179 ++++++++++++++++++++++++ generate-aggregator-table.sh | 148 ++++++++++++++++++++ 4 files changed, 682 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 496d615..d9f8e64 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,36 @@ Note that there are related efforts at [SLING-7331](https://issues.apache.org/ji ## Modules You can find a list of the Apache Sling modules [here](docs/modules.md). -This list is generated from the script [generate-aggregator-table.sh](https://github.com/apache/sling-whiteboard/blob/master/gh-badge-script/generate-aggregator-table.sh). +This list is generated from the script [generate-aggregator-table.sh](https://github.com/apache/sling-whiteboard/blob/master/gh-badge-script/generate-aggregator-table.sh).. + +### Updating Module Badges + +We have a simple script to update the badges in GitHub's README.md files. To update all repositories: + + ./add-badges.sh [SLING_DIR] + +To update a single repository: + + ./add-badges.sh [SLING_DIR] [REPO_NAME] + +### Updating the Aggregator List + +To update the aggregator list: + + ./generate-aggregator-table.sh [SLING_DIR] + +### Dependencies + +This script depends on the following utilities: + + - xpath + - [grip](https://github.com/joeyespo/grip) + +### Prerequisites + + 1. Use the repo tool to extract all of the repositories in the [sling aggregator](https://github.com/apache/sling-aggregator) + 2. Ensure you have SSH based access enabled to GitHub + 3. Ensure all repository workspaces are in a clean state ## Retrieving all Sling modules diff --git a/Sling-Repos.csv b/Sling-Repos.csv new file mode 100644 index 0000000..3c1557d --- /dev/null +++ b/Sling-Repos.csv @@ -0,0 +1,325 @@ +Artifact ID,SVN Location,Github Response Code,Status,EOL +adapter-annotations,./tooling/maven/adapter-annotations/,200,,EOL +apache-sling-jar-resource-bundle,./tooling/maven/apache-sling-jar-resource-bundle/,200,,EOL +sling-archetype-parent,,,,EOL +sling-bundle-archetype,,,,EOL +htl-maven-plugin,./tooling/maven/htl-maven-plugin/,200,,EOL +ide-tooling,,,,EOL +sling-initial-content-archetype,,,,EOL +sling-jcrinstall-bundle-archetype,,,,EOL +jspc-maven-plugin,./tooling/maven/maven-jspc-plugin/,200,,EOL +launchpad-comparator,./tooling/release/launchpad-comparator/,200,,EOL +launchpad-debian,,,,EOL +launchpad-standalone-archetype,,,,EOL +launchpad-webapp-archetype,,,,EOL +maven-jcrocm-plugin,./tooling/maven/maven-jcrocm-plugin/,200,,EOL +maven-launchpad-plugin,./tooling/maven/maven-launchpad-plugin/,200,,EOL +maven-sling-plugin,./tooling/maven/maven-sling-plugin/,200,,EOL +org-apache-felix-framework,./launchpad/builder/target/slingstart-tmp/standalone/META-INF/maven/org.apache.felix/org.apache.felix.framework/,404,,EOL +org-apache-sling-adapter,./bundles/extensions/adapter/,200,,EOL +org-apache-sling-api,./bundles/api/,200,,EOL +org-apache-sling-auth-core,./bundles/auth/core/,200,,EOL +org-apache-sling-auth-form,./bundles/auth/form/,200,,EOL +org-apache-sling-auth-xing-api,./contrib/auth/org.apache.sling.auth.xing.api/,200,contrib,EOL +org-apache-sling-auth-xing-login,./contrib/auth/org.apache.sling.auth.xing.login/,200,contrib,EOL +org-apache-sling-auth-xing-oauth,./contrib/auth/org.apache.sling.auth.xing.oauth/,200,contrib,EOL +org-apache-sling-bnd-models,./tooling/bnd/models-bnd-plugin/,200,,EOL +org-apache-sling-bundleresource-impl,./bundles/extensions/bundleresource/,200,,EOL +org-apache-sling-caconfig-api,./bundles/extensions/caconfig/api/,200,,EOL +org-apache-sling-caconfig-bnd-plugin,./tooling/bnd/caconfig-bnd-plugin/,200,,EOL +org-apache-sling-caconfig-impl,./bundles/extensions/caconfig/impl/,200,,EOL +org-apache-sling-caconfig-integration-tests,./bundles/extensions/caconfig/integration-tests/,200,,EOL +org-apache-sling-caconfig-spi,./bundles/extensions/caconfig/spi/,200,,EOL +org-apache-sling-cassandra,./contrib/extensions/cassandra/,200,contrib,EOL +org-apache-sling-commons-cache,./contrib/extensions/cache/,404,contrib,EOL +org-apache-sling-commons-cache-api,./contrib/extensions/cache/api/,200,contrib,EOL +org-apache-sling-commons-cache-container-test,./contrib/extensions/cache/container-test/,200,contrib,EOL +org-apache-sling-commons-cache-ehcache,./contrib/extensions/cache/ehcache/,200,contrib,EOL +org-apache-sling-commons-cache-impl,./contrib/extensions/cache/impl/,200,contrib,EOL +org-apache-sling-commons-cache-infinispan,./contrib/extensions/cache/infinispan/,404,contrib,EOL +org-apache-sling-commons-cache-portal,./contrib/extensions/cache/portal/,200,contrib,EOL +org-apache-sling-commons-classloader,./bundles/commons/classloader/,200,,EOL +org-apache-sling-commons-compiler,./bundles/commons/compiler/,200,,EOL +org-apache-sling-commons-contentdetection,./bundles/commons/contentdetection/,200,,EOL +org-apache-sling-commons-fsclassloader,./bundles/commons/fsclassloader/,200,,EOL +org-apache-sling-commons-html,./contrib/commons/html/,200,contrib,EOL +org-apache-sling-commons-johnzon,./bundles/commons/johnzon/,200,,EOL +org-apache-sling-commons-log,./bundles/commons/log/,200,,EOL +org-apache-sling-commons-log-webconsole,./bundles/commons/log-webconsole/,200,,EOL +org-apache-sling-commons-logservice,./bundles/commons/logservice/,200,,EOL +org-apache-sling-commons-messaging,./bundles/commons/org.apache.sling.commons.messaging/,200,,EOL +org-apache-sling-commons-messaging-mail,./bundles/commons/org.apache.sling.commons.messaging.mail/,200,,EOL +org-apache-sling-commons-metrics,./bundles/commons/metrics/,200,,EOL +org-apache-sling-commons-metrics-rrd4j,./bundles/commons/metrics-rrd4j/,200,,EOL +org-apache-sling-commons-mime,./bundles/commons/mime/,200,,EOL +org-apache-sling-commons-osgi,./launchpad/builder/target/slingstart-tmp/standalone/META-INF/maven/org.apache.sling/org.apache.sling.commons.osgi/,200,,EOL +org-apache-sling-commons-scheduler,./bundles/commons/scheduler/,200,,EOL +org-apache-sling-commons-testing,./bundles/commons/testing/,200,,EOL +org-apache-sling-commons-threaddump,./bundles/commons/threaddump/,200,,EOL +org-apache-sling-commons-threads,./bundles/commons/threads/,200,,EOL +org-apache-sling-crankstart-launcher,./contrib/crankstart/launcher/,200,contrib,EOL +org-apache-sling-crankstart-test-model,,,,EOL +org-apache-sling-crankstart-test-services,./contrib/crankstart/test-services/,200,contrib,EOL +org-apache-sling-cransktart-test-model,./contrib/crankstart/test-model/,301,contrib,EOL +org-apache-sling-datasource,./contrib/extensions/datasource/,200,contrib,EOL +org-apache-sling-discovery-api,./bundles/extensions/discovery/api/,200,,EOL +org-apache-sling-discovery-base,./bundles/extensions/discovery/base/,200,,EOL +org-apache-sling-discovery-commons,./bundles/extensions/discovery/commons/,200,,EOL +org-apache-sling-discovery-impl,./bundles/extensions/discovery/impl/,200,,EOL +org-apache-sling-discovery-oak,./bundles/extensions/discovery/oak/,200,,EOL +org-apache-sling-discovery-standalone,./bundles/extensions/discovery/standalone/,200,,EOL +org-apache-sling-discovery-support,./bundles/extensions/discovery/support/,200,,EOL +org-apache-sling-distribution-api,./contrib/extensions/distribution/api/,200,contrib,EOL +org-apache-sling-distribution-avro-serializer,./contrib/extensions/distribution/avro-serializer/,200,contrib,EOL +org-apache-sling-distribution-core,./contrib/extensions/distribution/core/,200,contrib,EOL +org-apache-sling-distribution-it,./contrib/extensions/distribution/it/,200,contrib,EOL +org-apache-sling-distribution-kryo-serializer,./contrib/extensions/distribution/kryo-serializer/,200,contrib,EOL +org-apache-sling-distribution-sample,./contrib/extensions/distribution/sample/,200,contrib,EOL +org-apache-sling-dynamic-include,./contrib/extensions/sling-dynamic-include/,200,contrib,EOL +org-apache-sling-engine,./bundles/engine/,200,,EOL +org-apache-sling-event,./bundles/extensions/event/resource/,200,,EOL +org-apache-sling-event-api,./bundles/extensions/event/api/,200,,EOL +org-apache-sling-event-dea,./bundles/extensions/dea/,200,,EOL +org-apache-sling-extensions-classloader-leak-detector,./contrib/extensions/leak-detector/,200,contrib,EOL +org-apache-sling-extensions-logback-groovy-fragment,./contrib/extensions/logback-groovy-fragment/,200,contrib,EOL +org-apache-sling-extensions-slf4j-mdc,./contrib/extensions/slf4j-mdc/,200,contrib,EOL +org-apache-sling-extensions-webconsolebranding,./bundles/extensions/webconsolebranding/,200,,EOL +org-apache-sling-extensions-webconsolesecurityprovider,./bundles/extensions/webconsolesecurityprovider/,200,,EOL +org-apache-sling-feature,,,,EOL +org-apache-sling-feature-analyser,,,,EOL +org-apache-sling-feature-applicationbuilder,,,,EOL +org-apache-sling-feature-io,,,,EOL +org-apache-sling-feature-karaf,,,,EOL +org-apache-sling-feature-launcher,,,,EOL +org-apache-sling-feature-modelconverter,,,,EOL +org-apache-sling-feature-resolver,,,,EOL +org-apache-sling-featureflags,./bundles/extensions/feature-flags/,200,,EOL +org-apache-sling-fragment-activation,./bundles/extensions/framework-extension-activation/,200,,EOL +org-apache-sling-fragment-nashorn,./contrib/scripting/framework-extension-nashorn/,200,contrib,EOL +org-apache-sling-fragment-transaction,./bundles/extensions/framework-extension-transaction/,200,,EOL +org-apache-sling-fragment-ws,./bundles/extensions/framework-extension-ws/,200,,EOL +org-apache-sling-fragment-xml,./bundles/extensions/framework-extension-xml/,200,,EOL +org-apache-sling-fsresource,./bundles/extensions/fsresource/,200,,EOL +org-apache-sling-hapi,./contrib/extensions/hapi/core/,200,contrib,EOL +org-apache-sling-hapi-client,./contrib/extensions/hapi/client/,200,contrib,EOL +org-apache-sling-hapi-samplecontent,./contrib/extensions/hapi/samplecontent/,200,contrib,EOL +org-apache-sling-hc-annotations,./bundles/extensions/healthcheck/annotations/,200,,EOL +org-apache-sling-hc-api,./bundles/extensions/healthcheck/api/,200,,EOL +org-apache-sling-hc-core,./bundles/extensions/healthcheck/core/,200,,EOL +org-apache-sling-hc-it,./bundles/extensions/healthcheck/it/,200,,EOL +org-apache-sling-hc-junit-bridge,./bundles/extensions/healthcheck/junit-bridge/,200,,EOL +org-apache-sling-hc-samples,./bundles/extensions/healthcheck/samples/,200,,EOL +org-apache-sling-hc-support,./bundles/extensions/healthcheck/support/,200,,EOL +org-apache-sling-hc-webconsole,./bundles/extensions/healthcheck/webconsole/,200,,EOL +org-apache-sling-i18n,./bundles/extensions/i18n/,200,,EOL +org-apache-sling-ide-api,./tooling/ide/api/,404,deprecated,EOL +org-apache-sling-ide-api-test,./tooling/ide/api-test/,404,deprecated,EOL +org-apache-sling-ide-artifacts,./tooling/ide/artifacts/,404,deprecated,EOL +org-apache-sling-ide-eclipse-core,./tooling/ide/eclipse-core/,404,deprecated,EOL +org-apache-sling-ide-eclipse-m2e-core,./tooling/ide/eclipse-m2e-core/,404,deprecated,EOL +org-apache-sling-ide-eclipse-m2e-test,./tooling/ide/eclipse-m2e-test/,404,deprecated,EOL +org-apache-sling-ide-eclipse-m2e-ui,./tooling/ide/eclipse-m2e-ui/,404,deprecated,EOL +org-apache-sling-ide-eclipse-sightly-core,./tooling/ide/eclipse-sightly-core/,404,deprecated,EOL +org-apache-sling-ide-eclipse-sightly-ui,./tooling/ide/eclipse-sightly-ui/,404,deprecated,EOL +org-apache-sling-ide-eclipse-test,./tooling/ide/eclipse-test/,404,deprecated,EOL +org-apache-sling-ide-eclipse-ui,./tooling/ide/eclipse-ui/,404,deprecated,EOL +org-apache-sling-ide-feature,./tooling/ide/feature/,404,deprecated,EOL +org-apache-sling-ide-impl-resource,./tooling/ide/impl-resource/,404,deprecated,EOL +org-apache-sling-ide-impl-resource-test,./tooling/ide/impl-resource-test/,404,deprecated,EOL +org-apache-sling-ide-impl-vlt,./tooling/ide/impl-vlt/,404,deprecated,EOL +org-apache-sling-ide-impl-vlt-test,./tooling/ide/impl-vlt-test/,404,deprecated,EOL +org-apache-sling-ide-m2e-feature,./tooling/ide/m2e-feature/,404,deprecated,EOL +org-apache-sling-ide-p2update,./tooling/ide/p2update/,404,deprecated,EOL +org-apache-sling-ide-sightly-feature,./tooling/ide/sightly-feature/,404,deprecated,EOL +org-apache-sling-ide-source-bundle,./tooling/ide/source-bundle/,404,deprecated,EOL +org-apache-sling-ide-target-definition,./tooling/ide/target-definition/,404,deprecated,EOL +org-apache-sling-ide-vlt-wrapper,./tooling/ide/vlt-wrapper/,404,deprecated,EOL +org-apache-sling-installer-console,./installer/console/,200,,EOL +org-apache-sling-installer-core,./installer/core/,200,,EOL +org-apache-sling-installer-factory-configuration,./installer/factories/configuration/,200,,EOL +org-apache-sling-installer-factory-deploymentpackage,./installer/factories/deploymentpck/,200,,EOL +org-apache-sling-installer-factory-model,./installer/factories/model/,200,,EOL +org-apache-sling-installer-factory-packages,./installer/factories/packages/,200,,EOL +org-apache-sling-installer-factory-subsystems,./installer/factories/subsystems/,200,,EOL +org-apache-sling-installer-factory-subsystems-base,./installer/factories/subsystem_base/,200,,EOL +org-apache-sling-installer-hc,./installer/hc/,200,,EOL +org-apache-sling-installer-it,./installer/it/,200,,EOL +org-apache-sling-installer-provider-file,./installer/providers/file/,200,,EOL +org-apache-sling-installer-provider-jcr,./installer/providers/jcr/,200,,EOL +org-apache-sling-javax-activation,./bundles/extensions/javax.activation/,200,,EOL +org-apache-sling-jcr-api,./bundles/jcr/api/,200,,EOL +org-apache-sling-jcr-base,./bundles/jcr/base/,200,,EOL +org-apache-sling-jcr-classloader,./bundles/jcr/classloader/,200,,EOL +org-apache-sling-jcr-contentloader,./bundles/jcr/contentloader/,200,,EOL +org-apache-sling-jcr-contentparser,./bundles/jcr/contentparser/,200,,EOL +org-apache-sling-jcr-davex,./bundles/jcr/davex/,200,,EOL +org-apache-sling-jcr-jackrabbit-accessmanager,./bundles/jcr/jackrabbit-accessmanager/,200,,EOL +org-apache-sling-jcr-jackrabbit-base,./bundles/jcr/jackrabbit-base/,200,,EOL +org-apache-sling-jcr-jackrabbit-usermanager,./bundles/jcr/jackrabbit-usermanager/,200,,EOL +org-apache-sling-jcr-jcr-wrapper,./bundles/jcr/jcr-wrapper/,200,,EOL +org-apache-sling-jcr-js-nodetypes,./contrib/jcr/js/nodetypes/,200,contrib,EOL +org-apache-sling-jcr-oak-server,./bundles/jcr/oak-server/,200,,EOL +org-apache-sling-jcr-registration,./bundles/jcr/registration/,200,,EOL +org-apache-sling-jcr-repoinit,./bundles/jcr/repoinit/,200,,EOL +org-apache-sling-jcr-repository-it-resource-versioning,./bundles/jcr/it-resource-versioning/,200,,EOL +org-apache-sling-jcr-resource,./bundles/jcr/resource/,200,,EOL +org-apache-sling-jcr-resourcesecurity,./contrib/jcr/resourcesecurity/,200,contrib,EOL +org-apache-sling-jcr-webconsole,./bundles/jcr/webconsole/,200,,EOL +org-apache-sling-jcr-webdav,./bundles/jcr/webdav/,200,,EOL +org-apache-sling-jms,./contrib/commons/mom/jms/,200,contrib,EOL +org-apache-sling-jmx-provider,./contrib/extensions/jmxprovider/,200,contrib,EOL +org-apache-sling-jobs,./contrib/commons/mom/jobs/core/,200,contrib,EOL +org-apache-sling-jobs-it,./contrib/commons/mom/jobs/it/,200,contrib,EOL +org-apache-sling-jobs-it-services,./contrib/commons/mom/jobs/it-services/,200,contrib,EOL +org-apache-sling-junit-core,./testing/junit/core/,200,,EOL +org-apache-sling-junit-healthcheck,./testing/junit/healthcheck/,200,,EOL +org-apache-sling-junit-performance,./testing/junit/performance/,200,,EOL +org-apache-sling-junit-remote,./testing/junit/remote/,200,,EOL +org-apache-sling-junit-scriptable,./testing/junit/scriptable/,200,,EOL +org-apache-sling-junit-teleporter,./testing/junit/teleporter/,200,,EOL +org-apache-sling-karaf-configs,./karaf/org.apache.sling.karaf-configs/,200,,EOL +org-apache-sling-karaf-distribution,./karaf/org.apache.sling.karaf-distribution/,200,,EOL +org-apache-sling-karaf-features,./karaf/org.apache.sling.karaf-features/,200,,EOL +org-apache-sling-karaf-integration-tests,./karaf/org.apache.sling.karaf-integration-tests/,200,,EOL +org-apache-sling-karaf-launchpad-oak-tar-integration-tests,./karaf/org.apache.sling.karaf-launchpad-oak-tar-integration-tests/,200,,EOL +org-apache-sling-launchpad-api,./launchpad/api/,200,,EOL +org-apache-sling-launchpad-base,./launchpad/builder/target/slingstart-tmp/standalone/META-INF/maven/org.apache.sling/org.apache.sling.launchpad.base/,200,,EOL +org-apache-sling-launchpad-content,./launchpad/content/,301,,EOL +org-apache-sling-launchpad-contrib-testing,./contrib/launchpad/testing/,200,contrib,EOL +org-apache-sling-launchpad-installer,./launchpad/installer/,200,,EOL +org-apache-sling-launchpad-integration-tests,./launchpad/integration-tests/,200,,EOL +org-apache-sling-launchpad-test-bundles,./launchpad/test-bundles/,200,,EOL +org-apache-sling-launchpad-test-fragment,./launchpad/test-fragment/,200,,EOL +org-apache-sling-launchpad-test-services,./launchpad/test-services/,200,,EOL +org-apache-sling-launchpad-test-services-war,./launchpad/test-services-war/,200,,EOL +org-apache-sling-launchpad-testing,./launchpad/testing/,200,,EOL +org-apache-sling-launchpad-testing-war,./launchpad/testing-war/,200,,EOL +org-apache-sling-mailarchive-james-wrapper,./samples/mail-archive/james-wrapper/,404,deprecated,EOL +org-apache-sling-mailarchive-server,./samples/mail-archive/server/,404,deprecated,EOL +org-apache-sling-mailarchive-stats,./samples/mail-archive/stats/,404,deprecated,EOL +org-apache-sling-mailarchive-ui,./samples/mail-archive/ui/,404,deprecated,EOL +org-apache-sling-models-api,./bundles/extensions/models/api/,200,,EOL +org-apache-sling-models-impl,./bundles/extensions/models/impl/,200,,EOL +org-apache-sling-models-integration-tests,./bundles/extensions/models/integration-tests/,200,,EOL +org-apache-sling-models-jacksonexporter,./bundles/extensions/models/jackson-exporter/,200,,EOL +org-apache-sling-models-validation-impl,./bundles/extensions/models/validation-impl/,200,,EOL +org-apache-sling-mom,./contrib/commons/mom/api/,200,contrib,EOL +org-apache-sling-mongodb,./contrib/extensions/mongodb/,200,contrib,EOL +org-apache-sling-nosql-couchbase-client,./contrib/nosql/couchbase-client/,200,contrib,EOL +org-apache-sling-nosql-couchbase-resourceprovider,./contrib/nosql/couchbase-resourceprovider/,200,contrib,EOL +org-apache-sling-nosql-generic,./contrib/nosql/generic/,200,contrib,EOL +org-apache-sling-nosql-launchpad,./contrib/nosql/launchpad/,200,contrib,EOL +org-apache-sling-nosql-mongodb-resourceprovider,./contrib/nosql/mongodb-resourceprovider/,200,contrib,EOL +org-apache-sling-oak-restrictions,./contrib/extensions/oak-restrictions/,200,contrib,EOL +org-apache-sling-paxexam-util,./testing/sling-pax-util/,200,,EOL +org-apache-sling-performance,,,,EOL +org-apache-sling-performance-base,./performance/base/,404,deprecated,EOL +org-apache-sling-performance-jcr-resource-2-0-10,./performance/jcr-resource-2.0.10/,404,deprecated,EOL +org-apache-sling-performance-jcr-resource-2-1-0,./performance/jcr-resource-2.1.0/,404,deprecated,EOL +org-apache-sling-performance-jcr-resource-2-2-0,./performance/jcr-resource-2.2.0/,404,deprecated,EOL +org-apache-sling-performance-jcr-resource-2-2-10,./performance/jcr-resource-2.2.10/,404,deprecated,EOL +org-apache-sling-performance-tests,./performance/tests/,404,deprecated,EOL +org-apache-sling-pipes,./contrib/extensions/sling-pipes/,200,contrib,EOL +org-apache-sling-provisioning-model,./tooling/support/provisioning-model/,200,,EOL +org-apache-sling-query,./contrib/extensions/sling-query/,200,contrib,EOL +org-apache-sling-repoinit-it,./bundles/extensions/repoinit/it/,200,,EOL +org-apache-sling-repoinit-parser,./bundles/extensions/repoinit/parser/,200,,EOL +org-apache-sling-reqanalyzer,./contrib/extensions/reqanalyzer/,200,contrib,EOL +org-apache-sling-resource-editor,./contrib/explorers/resourceeditor/,200,contrib,EOL +org-apache-sling-resource-inventory,./contrib/extensions/resource-inventory/,200,contrib,EOL +org-apache-sling-resource-presence,./bundles/extensions/org.apache.sling.resource.presence/,200,,EOL +org-apache-sling-resourceaccesssecurity,./bundles/resourceaccesssecurity/core/,200,,EOL +org-apache-sling-resourceaccesssecurity-it,./bundles/resourceaccesssecurity/it/,200,,EOL +org-apache-sling-resourcebuilder,./bundles/extensions/resourcebuilder/,200,,EOL +org-apache-sling-resourcecollection,./contrib/extensions/collection/,200,contrib,EOL +org-apache-sling-resourcemerger,./contrib/extensions/resourcemerger/,200,contrib,EOL +org-apache-sling-resourceresolver,./bundles/resourceresolver/,200,,EOL +org-apache-sling-rewriter,./contrib/extensions/rewriter/,200,contrib,EOL +org-apache-sling-sample-slingshot,./samples/slingshot/,404,deprecated,EOL +org-apache-sling-samples-custom-login-form,./samples/custom-login-form/,404,deprecated,EOL +org-apache-sling-samples-espblog,./samples/espblog/,404,deprecated,EOL +org-apache-sling-samples-fling,./samples/fling/,404,deprecated,EOL +org-apache-sling-samples-htlblog,./samples/htlblog/,404,deprecated,EOL +org-apache-sling-samples-javashell,./samples/javashell/,404,deprecated,EOL +org-apache-sling-samples-path-based-rtp,./samples/path-based-rtp/,404,deprecated,EOL +org-apache-sling-samples-post-servlet-extensions,./samples/post-servlet-extensions/,404,deprecated,EOL +org-apache-sling-samples-slingbucks,./samples/slingbucks/,404,deprecated,EOL +org-apache-sling-samples-testing-bundle-with-it,./samples/testing/bundle-with-it/,404,deprecated,EOL +org-apache-sling-samples-testing-module-with-it,./samples/testing/module-with-it/,404,deprecated,EOL +org-apache-sling-scripting-api,./bundles/scripting/api/,200,,EOL +org-apache-sling-scripting-console,./contrib/scripting/script-console/,200,contrib,EOL +org-apache-sling-scripting-core,./bundles/scripting/core/,200,,EOL +org-apache-sling-scripting-el-api,./bundles/scripting/el-api/,200,,EOL +org-apache-sling-scripting-esx,./contrib/scripting/esx/,200,contrib,EOL +org-apache-sling-scripting-freemarker,./contrib/scripting/freemarker/,200,contrib,EOL +org-apache-sling-scripting-groovy,./contrib/scripting/groovy/,200,contrib,EOL +org-apache-sling-scripting-java,./contrib/scripting/java/,200,contrib,EOL +org-apache-sling-scripting-javascript,./bundles/scripting/javascript/,200,,EOL +org-apache-sling-scripting-jsp,./bundles/scripting/jsp/,200,,EOL +org-apache-sling-scripting-jsp-api,./bundles/scripting/jsp-api/,200,,EOL +org-apache-sling-scripting-jsp-jstl,./bundles/scripting/jsp-jstl/,200,,EOL +org-apache-sling-scripting-jsp-taglib,./bundles/scripting/jsp-taglib/,200,,EOL +org-apache-sling-scripting-sightly,./bundles/scripting/sightly/engine/,200,,EOL +org-apache-sling-scripting-sightly-compiler,./bundles/scripting/sightly/compiler/,200,,EOL +org-apache-sling-scripting-sightly-compiler-java,./bundles/scripting/sightly/java-compiler/,200,,EOL +org-apache-sling-scripting-sightly-js-provider,./bundles/scripting/sightly/js-use-provider/,200,,EOL +org-apache-sling-scripting-sightly-models-provider,./bundles/scripting/sightly/models-use-provider/,200,,EOL +org-apache-sling-scripting-sightly-repl,./bundles/scripting/sightly/repl/,200,,EOL +org-apache-sling-scripting-sightly-testing,./bundles/scripting/sightly/testing/,200,,EOL +org-apache-sling-scripting-sightly-testing-content,./bundles/scripting/sightly/testing-content/,200,,EOL +org-apache-sling-scripting-thymeleaf,./contrib/scripting/org.apache.sling.scripting.thymeleaf/,200,contrib,EOL +org-apache-sling-scripting-xproc,./contrib/scripting/xproc/,200,contrib,EOL +org-apache-sling-security,./contrib/extensions/security/,200,contrib,EOL +org-apache-sling-serviceuser-webconsole,,,,EOL +org-apache-sling-serviceusermapper,./bundles/extensions/serviceusermapper/,200,,EOL +org-apache-sling-servlet-helpers,./bundles/extensions/servlet-helpers/,200,,EOL +org-apache-sling-servlets-annotations,,,,EOL +org-apache-sling-servlets-annotations-it,,,,EOL +org-apache-sling-servlets-get,./bundles/servlets/get/,200,,EOL +org-apache-sling-servlets-post,./bundles/servlets/post/,200,,EOL +org-apache-sling-servlets-resolver,./bundles/servlets/resolver/,200,,EOL +org-apache-sling-settings,./bundles/extensions/settings/,200,,EOL +org-apache-sling-starter,./launchpad/builder/,200,,EOL +org-apache-sling-starter-content,,,,EOL +org-apache-sling-starter-docker,,,,EOL +org-apache-sling-starter-startup,./launchpad/starter.startup/,200,,EOL +org-apache-sling-startupfilter,./contrib/extensions/startup-filter/,200,contrib,EOL +org-apache-sling-startupfilter-disabler,./contrib/extensions/startup-filter-disabler/,200,contrib,EOL +org-apache-sling-superimposing,./contrib/extensions/superimposing/,200,contrib,EOL +org-apache-sling-tail,./contrib/extensions/logtail/,200,contrib,EOL +org-apache-sling-tenant,./contrib/extensions/tenant/,200,contrib,EOL +org-apache-sling-testing-caconfig-mock-plugin,./testing/mocks/caconfig-mock-plugin/,200,,EOL +org-apache-sling-testing-clients,./testing/http/clients/,200,,EOL +org-apache-sling-testing-email,./testing/email/,200,,EOL +org-apache-sling-testing-hamcrest,./testing/hamcrest/,200,,EOL +org-apache-sling-testing-jcr-mock,./testing/mocks/jcr-mock/,200,,EOL +org-apache-sling-testing-logging-mock,./testing/mocks/logging-mock/,200,,EOL +org-apache-sling-testing-osgi-mock,./testing/mocks/osgi-mock/,200,,EOL +org-apache-sling-testing-paxexam,./testing/org.apache.sling.testing.paxexam/,200,,EOL +org-apache-sling-testing-resourceresolver-mock,./testing/mocks/resourceresolver-mock/,200,,EOL +org-apache-sling-testing-rules,./testing/junit/rules/,200,,EOL +org-apache-sling-testing-serversetup,./testing/serversetup/,200,,EOL +org-apache-sling-testing-sling-mock,./testing/mocks/sling-mock/,200,,EOL +org-apache-sling-testing-sling-mock-oak,./testing/mocks/sling-mock-oak/,200,,EOL +org-apache-sling-testing-tools,./testing/tools/,404,deprecated,EOL +org-apache-sling-tooling-support-install,./tooling/support/install/,200,,EOL +org-apache-sling-tooling-support-source,./tooling/support/source/,200,,EOL +org-apache-sling-tracer,./contrib/extensions/tracer/,200,contrib,EOL +org-apache-sling-urlrewriter,./contrib/extensions/urlrewriter/,200,contrib,EOL +org-apache-sling-validation-api,./bundles/extensions/validation/api/,200,,EOL +org-apache-sling-validation-core,./bundles/extensions/validation/core/,200,,EOL +org-apache-sling-validation-examples,./bundles/extensions/validation/examples/,200,,EOL +org-apache-sling-validation-test-services,./bundles/extensions/validation/test-services/,200,,EOL +org-apache-sling-xss,./bundles/extensions/xss/,200,,EOL +parent,,,,EOL +samples,,,,EOL +servlet-archetype,,,,EOL +site,,,,EOL +slingfeature-maven-plugin,,,,EOL +slingstart-archetype,./tooling/maven/archetypes/slingstart/,404,,EOL +slingstart-maven-plugin,./tooling/maven/slingstart-maven-plugin/,200,,EOL +taglib-archetype,./tooling/maven/archetypes/taglib/,404,,EOL +test-servlet-archetype-project,./tooling/maven/archetypes/servlet/src/test/resources/projects/normal/reference/,404,deprecated,EOL +tooling-jenkins,,,,EOL +tooling-release,,,,EOL +tooling-scm,,,,EOL \ No newline at end of file diff --git a/add-badges.sh b/add-badges.sh new file mode 100755 index 0000000..65f97fa --- /dev/null +++ b/add-badges.sh @@ -0,0 +1,179 @@ +#!/bin/bash + +SLING_DIR=$1 + +PROJECT=$2 + +SCRIPT_DIR=$(pwd) + +function prepend () { + echo -e "$LINE$(cat README.md)" > README.md +} + +function overwrite_readme () { + PROJECT_NAME="$(xpath pom.xml '/project/name/text()' | xargs)" > /dev/null 2>&1 + PROJECT_DESCRIPTION="$(xpath pom.xml '/project/description/text()' | xargs)" > /dev/null 2>&1 + + echo "Overwriting README for $PROJECT_NAME" + + printf "# $PROJECT_NAME\n\nThis module is part of the [Apache Sling](https://sling.apache.org) project.\n\n$PROJECT_DESCRIPTION" > README.md + update_badges +} + +function update_badges () { + echo "Updating badges on $REPO" + REPO_NAME=${PWD##*/} + ARTIFACT_ID="$(xpath pom.xml '/project/artifactId/text()')" > /dev/null 2>&1 + echo "Artifact ID: $ARTIFACT_ID" + + GIT=$(git remote -v) + if [[ "$GIT" = *"https"* ]]; then + git checkout master + git remote remove origin + git remote add origin [email protected]:apache/sling-$REPO_NAME.git + git fetch + git branch --set-upstream-to=origin/master master + fi + + echo "Adding standard items for $REPO_NAME" + LINE="\n\n" + prepend + + STATUS="" + while IFS=, read -r ID LOC GH STAT EOL + do + if [ "$ID" == "$REPO_NAME" ]; then + STATUS="$STAT" + fi + done < $SCRIPT_DIR/Sling-Repos.csv + + if [ ! -z $STATUS ]; then + LINE=" [](https://github.com/apache/sling-aggregator/blob/master/docs/status/$STATUS.md)" + prepend + fi + + GROUP="$(xmllint --xpath "string(/manifest/project[@path=\"$REPO_NAME\"]/@groups)" ~/git/sling/aggregator/default.xml)" + echo -e "\nGroup: $GROUP" + if [ ! -z "$GROUP" ]; then + LINE=" [](https://github.com/apache/sling-aggregator/blob/master/docs/groups/$GROUP.md)" + prepend + fi + + LINE=" [](https://www.apache.org/licenses/LICENSE-2.0)" + prepend + + if [[ ! -z $ARTIFACT_ID ]]; then + JAVADOC_BADGE_RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" https://www.javadoc.io/badge/org.apache.sling/$ARTIFACT_ID.svg) + if [[ $JAVADOC_BADGE_RESPONSE != "404" ]]; then + echo "Adding Javadoc badge for $ARTIFACT_ID" + LINE=" [](https://www.javadoc.io/doc/org.apache.sling/$ARTIFACT_ID)" + prepend + else + echo "No published javadocs found for $ARTIFACT_ID" + fi + + MAVEN_BADGE_CONTENTS=$(curl -L https://maven-badges.herokuapp.com/maven-central/org.apache.sling/$ARTIFACT_ID/badge.svg) + if [[ $MAVEN_BADGE_CONTENTS = *"unknown"* ]]; then + echo "No Maven release found for $ARTIFACT_ID" + else + echo "Adding Maven release badge for $ARTIFACT_ID" + LINE=" [](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.apache.sling%22%20a%3A%22$ARTIFACT_ID%22)" + prepend + fi + fi + + COVERAGE_CONTENTS=$(curl -L https://img.shields.io/jenkins/c/https/builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8.svg) + if [[ $COVERAGE_CONTENTS = *"inaccessible"* || $COVERAGE_CONTENTS = *"invalid"* ]]; then + echo "No coverage reports found for $REPO_NAME" + else + echo "Adding coverage badge for $REPO_NAME" + LINE=" [](https://builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8/)" + prepend + fi + + TEST_CONTENTS=$(curl -L https://img.shields.io/jenkins/t/https/builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8.svg) + if [[ $TEST_CONTENTS = *"inaccessible"* || $TEST_CONTENTS = *"invalid"* ]]; then + echo "No tests found for $REPO_NAME" + else + echo "Adding test badge for $REPO_NAME" + LINE=" [](https://builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8/test_results_analyzer/)" + prepend + fi + + BUILD_RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" https://builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8) + if [ "$BUILD_RESPONSE" != "404" ]; then + echo "Adding build badge for $REPO_NAME" + LINE=" [](https://builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8)" + prepend + else + echo "No build found for $REPO_NAME" + fi + + echo "Adding logo for $REPO_NAME" + LINE="[<img src=\"http://sling.apache.org/res/logos/sling.png\"/>](http://sling.apache.org)\n\n" + prepend + + grip -b > /dev/null 2>&1 & > /dev/null + PID=$! + + if [[ ! -z $ARTIFACT_ID ]]; then + echo "Commit results? (C=Commit,N=No,R=Revert,O=Overwrite README)?" + else + echo "Commit results? (C=Commit,N=No,R=Revert)?" + fi + read RESULTS + + kill $PID 2>&1 > /dev/null + + if [ "$RESULTS" == "C" ]; then + git commit README.md -m "Updating badges for ${REPO_NAME}" + elif [ "$RESULTS" == "R" ]; then + git checkout -- README.md + elif [ "$RESULTS" == "O" ]; then + git checkout -- README.md + overwrite_readme + fi +} + +function handle_repo () { + cd $REPO + if [ ! -e "README.md" ]; then + echo "No README.md found in $REPO" + elif grep -q "http:\/\/sling\.apache\.org\/res\/logos\/sling\.png" "README.md"; then + echo "Badge already present on $REPO, overwrite (Y/N)?" + read OVERWRITE + if [ "$OVERWRITE" == "Y" ]; then + sed -i -e 1,4d README.md + rm README.md-e + update_badges + else + echo "Skipping..." + fi + else + update_badges + fi +} + +if [ ! -f ~/.grip/settings.py ]; then + echo "Did not find GitHub Access token file, please generate an access token on GitHub https://github.com/settings/tokens/new?scopes= and provide it below:" + read ACCESS_TOKEN + echo "PASSWORD = '$ACCESS_TOKEN'" > ~/.grip/settings.py +fi + +printf "\nStarting badge update!\n\n-------------------------\n\n" +if [ -z "$SLING_DIR" ]; then + echo "Please provide the Sling Directory: ./add-badges.sh [SLING_DIR]" + exit 1 +fi + +if [ -z "$PROJECT" ]; then + echo "Handling all repos in $SLING_DIR" + for REPO in $SLING_DIR/*/ ; do + handle_repo + done +else + echo "Handling project $SLING_DIR/$PROJECT" + REPO=$SLING_DIR/$PROJECT + handle_repo +fi +printf "\n\nBadge Update Complete!" \ No newline at end of file diff --git a/generate-aggregator-table.sh b/generate-aggregator-table.sh new file mode 100755 index 0000000..cce663a --- /dev/null +++ b/generate-aggregator-table.sh @@ -0,0 +1,148 @@ +#!/usr/bin/env bash + +SLING_DIR=$1 + +SCRIPT_DIR=$(pwd) + +function write_data () { + echo -n -e $LINE >> $SLING_DIR/aggregator/docs/modules.md + + if [ ! -z $GROUP ]; then + echo "Adding to group $GROUP" + if [ -e $SLING_DIR/aggregator/docs/groups/$GROUP.md ]; then + echo "Appending item" + echo -n -e $LINE >> $SLING_DIR/aggregator/docs/groups/$GROUP.md + else + echo "Creating group file" + echo -n -e "[Apache Sling](http://sling.apache.org) > [Aggregator](https://github.com/apache/sling-aggregator/) > [Modules](https://github.com/apache/sling-aggregator/blob/master/docs/modules.md) > $GROUP\n# $GROUP Modules\n\n| Module | Description | Module Status |\n|--- |--- |--- |" > $SLING_DIR/aggregator/docs/groups/$GROUP.md + echo -n -e $LINE >> $SLING_DIR/aggregator/docs/groups/$GROUP.md + fi + fi + + if [ ! -z $STATUS ]; then + echo "Adding to status $STATUS" + if [ -e $SLING_DIR/aggregator/docs/status/$STATUS.md ]; then + echo "Appending item" + echo -n -e $LINE >> $SLING_DIR/aggregator/docs/status/$STATUS.md + else + echo "Creating status file" + echo -n -e "[Apache Sling](http://sling.apache.org) > [Aggregator](https://github.com/apache/sling-aggregator/) > [Modules](https://github.com/apache/sling-aggregator/blob/master/docs/modules.md) > $STATUS\n# $STATUS Modules\n\n| Module | Description | Module Status |\n|--- |--- |--- |" > $SLING_DIR/aggregator/docs/status/$STATUS.md + echo -n -e $LINE >> $SLING_DIR/aggregator/docs/status/$STATUS.md + fi + fi +} + +function add_repo () { + echo "Fetching badges on $REPO" + + cd $REPO + REPO_NAME=${PWD##*/} + + echo "Repo Name: $REPO_NAME" + + ARTIFACT_ID="$(xpath pom.xml '/project/artifactId/text()')" > /dev/null 2>&1 + echo "Artifact ID: $ARTIFACT_ID" + + if [[ ! -z $ARTIFACT_ID ]]; then + + GROUP="$(xmllint --xpath "string(/manifest/project[@path=\"$REPO_NAME\"]/@groups)" ~/git/sling/aggregator/default.xml)" + echo -e "\nGroup: $GROUP" + + NAME="$(xpath pom.xml '/project/name/text()' | xargs)" > /dev/null 2>&1 + DESCRIPTION="$(xpath pom.xml '/project/description/text()' | xargs)" > /dev/null 2>&1 + + STATUS="" + while IFS=, read -r ID LOC GH STAT EOL + do + if [ "$ID" == "$REPO_NAME" ]; then + STATUS="$STAT" + fi + done < $SCRIPT_DIR/Sling-Repos.csv + + echo "Adding standard items for $REPO_NAME" + LINE="\n| [$NAME](https://github.com/apache/sling-$REPO_NAME) <br/> <small>([$ARTIFACT_ID](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.apache.sling%22%20a%3A%22$ARTIFACT_ID%22))</small> | $DESCRIPTION | " + write_data + + BUILD_RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" https://builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8) > /dev/null 2>&1 + if [ "$BUILD_RESPONSE" != "404" ]; then + echo "Adding build badge for $REPO_NAME" + LINE=" [](https://builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8)" + write_data + else + echo "No build found for $REPO_NAME" + fi + + TEST_CONTENTS=$(curl -L https://img.shields.io/jenkins/t/https/builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8.svg) > /dev/null 2>&1 + if [[ $TEST_CONTENTS = *"inaccessible"* || $TEST_CONTENTS = *"invalid"* ]]; then + echo "No tests found for $REPO_NAME" + else + echo "Adding test badge for $REPO_NAME" + LINE=" [](https://builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8/test_results_analyzer/)" + write_data + fi + + COVERAGE_CONTENTS=$(curl -L https://img.shields.io/jenkins/c/https/builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8.svg) > /dev/null 2>&1 + if [[ $COVERAGE_CONTENTS = *"inaccessible"* || $COVERAGE_CONTENTS = *"invalid"* ]]; then + echo "No coverage reports found for $REPO_NAME" + else + echo "Adding coverage badge for $REPO_NAME" + LINE=" [](https://builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8/)" + write_data + fi + + JAVADOC_BADGE_RESPONSE=$(curl -s -o /dev/null -w "%{http_code}" https://www.javadoc.io/badge/org.apache.sling/$ARTIFACT_ID.svg) > /dev/null 2>&1 + if [[ $JAVADOC_BADGE_RESPONSE != "404" ]]; then + echo "Adding Javadoc badge for $ARTIFACT_ID" + LINE=" [](https://www.javadoc.io/doc/org.apache.sling/$ARTIFACT_ID)" + write_data + else + echo "No published javadocs found for $ARTIFACT_ID" + fi + + MAVEN_BADGE_CONTENTS=$(curl -L https://maven-badges.herokuapp.com/maven-central/org.apache.sling/$ARTIFACT_ID/badge.svg) > /dev/null 2>&1 + if [[ $MAVEN_BADGE_CONTENTS = *"unknown"* ]]; then + echo "No Maven release found for $ARTIFACT_ID" + else + echo "Adding Maven release badge for $ARTIFACT_ID" + LINE=" [](http://search.maven.org/#search%7Cga%7C1%7Cg%3A%22org.apache.sling%22%20a%3A%22$ARTIFACT_ID%22)" + write_data + fi + + if [ ! -z $STATUS ]; then + LINE=" [](https://github.com/apache/sling-aggregator/blob/master/docs/status/$STATUS.md)" + write_data + fi + + if [ ! -z "$GROUP" ]; then + LINE=" [](https://github.com/apache/sling-aggregator/blob/master/docs/groups/$GROUP.md)" + write_data + fi + + LINE=" |" + write_data + fi +} + +if [ ! -f ~/.grip/settings.py ]; then + echo "Did not find GitHub Access token file, please generate an access token on GitHub https://github.com/settings/tokens/new?scopes= and provide it below:" + read ACCESS_TOKEN + echo "PASSWORD = '$ACCESS_TOKEN'" > ~/.grip/settings.py +fi + +printf "\nAggregator Table Generation!\n\n-------------------------\n\n" +if [ -z "$SLING_DIR" ]; then + echo "Please provide the Sling Directory: ./generate-aggregator-table.sh [SLING_DIR]" + exit 1 +fi + +rm -rf $SLING_DIR/aggregator/docs/status/* $SLING_DIR/aggregator/docs/groups/* +mkdir $SLING_DIR/aggregator/docs +mkdir $SLING_DIR/aggregator/docs/groups +mkdir $SLING_DIR/aggregator/docs/status +echo -e -n "[Apache Sling](http://sling.apache.org) > [Aggregator](https://github.com/apache/sling-aggregator/) > Modules\n# Modules\n\n| Module | Description | Module Status |\n|--- |--- |--- |" > $SLING_DIR/aggregator/docs/modules.md + +echo "Handling all repos in $SLING_DIR" +for REPO in $SLING_DIR/*/ ; do + add_repo +done +echo "Table Generation Complete!" \ No newline at end of file
