You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by dk...@apache.org on 2018/06/28 16:13:21 UTC

[sling-aggregator] 02/02: Adding the scripts to aggregator for SLING-7684

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 <dk...@apache.org>
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 git@github.com: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="&#32;[![$STATUS](http://sling.apache.org/badges/status-$STATUS.svg)](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=" [![${GROUP}](https://sling.apache.org/badges/group-$GROUP.svg)](https://github.com/apache/sling-aggregator/blob/master/docs/groups/$GROUP.md)"
+        prepend
+    fi
+    
+    LINE=" [![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](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=" [![JavaDocs](https://www.javadoc.io/badge/org.apache.sling/$ARTIFACT_ID.svg)](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=" [![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.sling/$ARTIFACT_ID/badge.svg)](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=" [![Coverage Status](https://img.shields.io/jenkins/c/https/builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8.svg)](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=" [![Test Status](https://img.shields.io/jenkins/t/https/builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8.svg)](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=" [![Build Status](https://builds.apache.org/buildStatus/icon?job=sling-$REPO_NAME-1.8)](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&nbsp;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&nbsp;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="&#32;[![Build Status](https://builds.apache.org/buildStatus/icon?job=sling-$REPO_NAME-1.8)](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="&#32;[![Test Status](https://img.shields.io/jenkins/t/https/builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8.svg?longCache=true)](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="&#32;[![Coverage Status](https://img.shields.io/jenkins/c/https/builds.apache.org/view/S-Z/view/Sling/job/sling-$REPO_NAME-1.8.svg?longCache=true)](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="&#32;[![JavaDocs](https://www.javadoc.io/badge/org.apache.sling/$ARTIFACT_ID.svg)](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="&#32;[![Maven Central](https://maven-badges.herokuapp.com/maven-central/org.apache.sling/$ARTIFACT_ID/badge.svg)](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="&#32;[![$STATUS](http://sling.apache.org/badges/status-$STATUS.svg)](https://github.com/apache/sling-aggregator/blob/master/docs/status/$STATUS.md)"
+            write_data
+        fi
+        
+        if [ ! -z "$GROUP" ]; then
+            LINE="&#32;[![${GROUP}](https://sling.apache.org/badges/group-$GROUP.svg)](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&nbsp;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