From e43db551f5f6f30ef864d7312e6d60f7b871db26 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Wed, 5 Jun 2019 13:56:31 -0600 Subject: [PATCH 01/34] Update rebase-vs-merge.md --- docs/developer-guide/git/rebase-vs-merge.md | 22 ++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/developer-guide/git/rebase-vs-merge.md b/docs/developer-guide/git/rebase-vs-merge.md index 0930cf67..a9ff5ef8 100644 --- a/docs/developer-guide/git/rebase-vs-merge.md +++ b/docs/developer-guide/git/rebase-vs-merge.md @@ -3,7 +3,7 @@ ## Conceptual Overview The first thing to understand about `git rebase` is that it solves the same problem as git merge. Both of these commands -are designed to integrate changes from one branch into another branch—they just do it in very different ways. +are designed to integrate changes from one branch into another branch. T hey just do it in very different ways. Consider what happens when you start working on a new feature in a dedicated branch, then another team member updates the `master` branch with new commits. This results in a forked history, which should be familiar to anyone who has used @@ -18,7 +18,7 @@ new commits into your `feature` branch, you have two options: `merging` or `reba ??? danger "Please avoid using this option!" Please avoid using this option. It creates unnecessary noise in your PRs and makes it ***extremely*** hard to - follow your real changes. We have included this information because it will give you better understanding of why we + follow your real changes. We have included this information because it will give you a better understanding of why we prefer `rebasing` over `merging`. The easiest option is to merge the `master` branch into the feature branch using something like the following: @@ -51,7 +51,7 @@ to understand the history of the project or branch you are working on. !!! success "We prefer this option over `merging`" -As an alternative to merging, you can rebase the feature branch onto master branch using the following commands: +As an alternative to merging, you can rebase the feature branch onto the master branch using the following commands: ``` git checkout feature @@ -59,7 +59,7 @@ git rebase master ``` This moves the entire `feature` branch to begin on the tip of the master branch, effectively incorporating all of -the new commits in `master`. But, instead of using a `merge` commit, `rebasing` re-writes the project history by +the new commits in `master`. Instead of using a `merge` commit, `rebasing` re-writes the project history by creating brand new commits for each commit in the original branch. ![](images/03.svg) @@ -97,7 +97,7 @@ However, before executing this command, please be **sure** nobody else is workin ## But how do I rebase? Before you start, it is a good idea to backup your current project. If this is your first time doing a rebase, you can -screw things up and loose/damage the work you've already done. So better safe, than sorry. (If you are a pro - what are +screw things up and loose/damage the work you've already done. So better safe than sorry. (If you are a pro - what are you even doing here? :smile: ) @@ -114,10 +114,10 @@ Steps: ```linenums="1" $ git remote add upstream git@github.com:strongbox/strongbox.git $ git remote -v - origin git@github.com:your-username/strongbox.git (fetch) - origin git@github.com:your-username/strongbox.git (push) - upstream git@github.com:strongbox/strongbox.git (fetch) - upstream git@github.com:strongbox/strongbox.git (push) + origin git@github.com:your-username/strongbox.git (fetch) + origin git@github.com:your-username/strongbox.git (push) + upstream git@github.com:strongbox/strongbox.git (fetch) + upstream git@github.com:strongbox/strongbox.git (push) ``` * Sync your fork @@ -156,7 +156,7 @@ You can also check Idea's manual for [Resolving Conflicts] #### Command line -If you are command line lover, you can execute the commands manually: +If you are a command line lover, you can execute the commands manually: ```linenums="1" git checkout feature-branch @@ -167,7 +167,7 @@ However, when conflicts arise, it could be a bit challenging to fix them from yo #### Finally -Once you are done rebasing and you have ensured that the code builds as well as the tests are passing, then you will +Once you are done rebasing and you have ensured that the code builds and the tests are passing, then you will need to force push your branch (remember the [Force Pushing](#force-pushing) section?) ``` From ec0abb5e14c1223bac7deac9e0512709d3ed7e94 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 13:00:29 -0600 Subject: [PATCH 02/34] Update The links at the bottom of the page are not working. From Information for Developers down to but not including the See also section. --- .../configuration-files/strongbox-authorization-yaml.md | 2 +- docs/user-guide/getting-started.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/user-guide/configuration-files/strongbox-authorization-yaml.md b/docs/user-guide/configuration-files/strongbox-authorization-yaml.md index 05c227b7..4bbab24f 100644 --- a/docs/user-guide/configuration-files/strongbox-authorization-yaml.md +++ b/docs/user-guide/configuration-files/strongbox-authorization-yaml.md @@ -43,7 +43,7 @@ This way every user not logged in will be awarded by the `ARTIFACTS_RESOLVE` and The following classes are related to various aspects of the authorization configuration: -| Class Name | Description | +| Class Name | Description | |:------------|-------------| | [`org.carlspring.strongbox.authorization.dto.AuthorizationConfigDto`](https://github.com/strongbox/strongbox/blob/master/strongbox-security/strongbox-user-management/src/main/java/org/carlspring/strongbox/authorization/dto/AuthorizationConfigDto.java) | Represents authorization configuration in a deserialized form. | | [`org.carlspring.strongbox.authorization.AuthorizationConfigFileManager`](https://github.com/strongbox/strongbox/blob/master/strongbox-security/strongbox-user-management/src/main/java/org/carlspring/strongbox/authorization/AuthorizationConfigFileManager.java) | Class to serialize / deserialize the authorization configuration. | diff --git a/docs/user-guide/getting-started.md b/docs/user-guide/getting-started.md index 53fabee3..822ba9f6 100644 --- a/docs/user-guide/getting-started.md +++ b/docs/user-guide/getting-started.md @@ -29,12 +29,12 @@ tar -zxf /path/to/strongbox-distribution*.tar.gz \ -C /opt/strongbox \ --strip-components=2 -# If you just want to start Strongbox without installing the systemd service: +# If you just want to start Strongbox without installing the system service: /opt/strongbox/bin/strongbox console # If you want to install Strongbox as a service then download the -# systemd service file. Make sure to change the `Environment` variables +# system service file. Make sure to change the `Environment` variables # in the service file where necessary. Depending on your distribution, # you could also move the environment variables into `EnvironmentFile` # and load that instead. From 8ec340dd7b0238ba5f7f63fa154fb4e8aae0ea06 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 13:19:13 -0600 Subject: [PATCH 03/34] Update strongbox-authorization-yaml.md Same issue with this page as well. None of the links are working. After checking multiple other pages, none of the external links were working for me. I am unsure if it is my computer and connection or the wiki. All of the links that correspond to other pages on the wiki are working fine. --- .../configuration-files/strongbox-authorization-yaml.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/user-guide/configuration-files/strongbox-authorization-yaml.md b/docs/user-guide/configuration-files/strongbox-authorization-yaml.md index 4bbab24f..ad8d4423 100644 --- a/docs/user-guide/configuration-files/strongbox-authorization-yaml.md +++ b/docs/user-guide/configuration-files/strongbox-authorization-yaml.md @@ -41,9 +41,9 @@ This way every user not logged in will be awarded by the `ARTIFACTS_RESOLVE` and # Information for Developers -The following classes are related to various aspects of the authorization configuration: +The following classes are related to various aspects of the authorization configuration: -| Class Name | Description | +| Class Name | Description | |:------------|-------------| | [`org.carlspring.strongbox.authorization.dto.AuthorizationConfigDto`](https://github.com/strongbox/strongbox/blob/master/strongbox-security/strongbox-user-management/src/main/java/org/carlspring/strongbox/authorization/dto/AuthorizationConfigDto.java) | Represents authorization configuration in a deserialized form. | | [`org.carlspring.strongbox.authorization.AuthorizationConfigFileManager`](https://github.com/strongbox/strongbox/blob/master/strongbox-security/strongbox-user-management/src/main/java/org/carlspring/strongbox/authorization/AuthorizationConfigFileManager.java) | Class to serialize / deserialize the authorization configuration. | From f16bfd6b6761dbf02618cf51400169bb691f2b53 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 14:11:53 -0600 Subject: [PATCH 04/34] Revert "Update strongbox-authorization-yaml.md" This reverts commit 8ec340dd7b0238ba5f7f63fa154fb4e8aae0ea06. --- .../configuration-files/strongbox-authorization-yaml.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/user-guide/configuration-files/strongbox-authorization-yaml.md b/docs/user-guide/configuration-files/strongbox-authorization-yaml.md index ad8d4423..4bbab24f 100644 --- a/docs/user-guide/configuration-files/strongbox-authorization-yaml.md +++ b/docs/user-guide/configuration-files/strongbox-authorization-yaml.md @@ -41,9 +41,9 @@ This way every user not logged in will be awarded by the `ARTIFACTS_RESOLVE` and # Information for Developers -The following classes are related to various aspects of the authorization configuration: +The following classes are related to various aspects of the authorization configuration: -| Class Name | Description | +| Class Name | Description | |:------------|-------------| | [`org.carlspring.strongbox.authorization.dto.AuthorizationConfigDto`](https://github.com/strongbox/strongbox/blob/master/strongbox-security/strongbox-user-management/src/main/java/org/carlspring/strongbox/authorization/dto/AuthorizationConfigDto.java) | Represents authorization configuration in a deserialized form. | | [`org.carlspring.strongbox.authorization.AuthorizationConfigFileManager`](https://github.com/strongbox/strongbox/blob/master/strongbox-security/strongbox-user-management/src/main/java/org/carlspring/strongbox/authorization/AuthorizationConfigFileManager.java) | Class to serialize / deserialize the authorization configuration. | From e042280eb7d882052faf1ebcc224ac355ab62224 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 14:16:05 -0600 Subject: [PATCH 05/34] Update strongbox-authorization-yaml.md Built in roles is still a TODO item and link is not functional. Once fixed, you can delete the (link not completed) --- .../configuration-files/strongbox-authorization-yaml.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/user-guide/configuration-files/strongbox-authorization-yaml.md b/docs/user-guide/configuration-files/strongbox-authorization-yaml.md index 4bbab24f..330a4495 100644 --- a/docs/user-guide/configuration-files/strongbox-authorization-yaml.md +++ b/docs/user-guide/configuration-files/strongbox-authorization-yaml.md @@ -26,7 +26,7 @@ Below is a simple scrap of the `strongbox-authorization.yaml` configuration file # Anonymous User Privileges -There is a special treatment role called **`ANONYMOUS_ROLE`** that is not considered as a [built-in role](http://TODO_link_to_roles) so it doesn't have a fixed set of permissions. Anonymous user's privileges are configurable and can be defined in the `strongbox-authorization.yaml` configuration file. +There is a special treatment role called **`ANONYMOUS_ROLE`** that is not considered as a (link not completed) [built-in role](http://TODO_link_to_roles) so it doesn't have a fixed set of permissions. Anonymous user's privileges are configurable and can be defined in the `strongbox-authorization.yaml` configuration file. authorizationConfiguration: roles: From 9adec0da8537c71554553cdc4f3a5478e1e158dc Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 14:34:05 -0600 Subject: [PATCH 06/34] Deleted TODO There are two TODOs that are in this page. I have deleted them for readability. Did not know if you wanted to have a task for these two sections instead of leaving the TODO visable to the general public? --- .../configuration-files/strongbox-cron-tasks-yaml.md | 2 +- .../configuration-files/strongbox-security-users-yaml.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/user-guide/configuration-files/strongbox-cron-tasks-yaml.md b/docs/user-guide/configuration-files/strongbox-cron-tasks-yaml.md index 24819b31..501be040 100644 --- a/docs/user-guide/configuration-files/strongbox-cron-tasks-yaml.md +++ b/docs/user-guide/configuration-files/strongbox-cron-tasks-yaml.md @@ -10,7 +10,7 @@ This file is read by the system at the server startup time and it automatically For an example, check [here](https://github.com/strongbox/strongbox/blob/master/strongbox-cron/strongbox-cron-api/src/main/resources/etc/conf/strongbox-cron-tasks.yaml) -Every cron task configuration is an `cronTaskConfigurations` array element. Inner properties are: +Every cron task configuration is a `cronTaskConfigurations` array element. Inner properties are: * `uuid`: identifies the individual cron task configuration in the system diff --git a/docs/user-guide/configuration-files/strongbox-security-users-yaml.md b/docs/user-guide/configuration-files/strongbox-security-users-yaml.md index 126263a1..4e4b91b3 100644 --- a/docs/user-guide/configuration-files/strongbox-security-users-yaml.md +++ b/docs/user-guide/configuration-files/strongbox-security-users-yaml.md @@ -1,6 +1,6 @@ # The `strongbox-security-users.yaml` File -TODO @sbespalov + # Example `strongbox-security-users.yaml` File @@ -69,7 +69,7 @@ The `access-model` element is optional. ### Configuring The User Access Model -TODO @sbespalov + ## Information for Developers From 058e0b770f8d6a15ad9f1537ad3f9b1c2e3f4c26 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 14:39:14 -0600 Subject: [PATCH 07/34] Update application-properties.md the use of or not is not gramatically needed. It is personal judgement if it should be included. --- docs/user-guide/application-properties.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/user-guide/application-properties.md b/docs/user-guide/application-properties.md index 0eff434d..67ba73cd 100644 --- a/docs/user-guide/application-properties.md +++ b/docs/user-guide/application-properties.md @@ -67,7 +67,7 @@ The following is a list of configuration properties, which can be used to custom ??? info "export STRONGBOX_DOWNLOAD_INDEXES_\${storageId}\_\* or
-Dstrongbox.download.indexes_\${storageId}_*" - Whether, or not to download the Maven indexes for all remote repositories in the `$storageId`. + Whether to download the Maven indexes for all remote repositories in the `$storageId`. Can be passed as `-Dstrongbox.download.indexes_${storageId}_*` or set via the env variable `STRONGBOX_DOWNLOAD_INDEXES_${storageId}_*` From 514c2d7f65d4292a1577e369386bc72daeb4d7f8 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 15:08:40 -0600 Subject: [PATCH 08/34] Removed TODO Chenged some grammer but also removed the TODO item from the Wiki. In the directory-structure.md file, I attempted to correct the broken links --- docs/user-guide/directory-structure.md | 6 +++--- docs/user-guide/ui/user-management.md | 4 ++-- docs/user-guide/upgrading.md | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/user-guide/directory-structure.md b/docs/user-guide/directory-structure.md index d00700a2..f0f82592 100644 --- a/docs/user-guide/directory-structure.md +++ b/docs/user-guide/directory-structure.md @@ -2,7 +2,7 @@ ## Strongbox Distribution -When you download and extract `strongbox-distribution.tar.gz` you will find the following directory structure: +When you download and extract `strongbox-distribution.tar.gz`, you will find the following directory structure: ### Directory structure @@ -23,7 +23,7 @@ When you download and extract `strongbox-distribution.tar.gz` you will find the The vault is the work area of the server. This includes things like the cache, location of the OrientDB files, storages and temporary directory. You can find this directory right next to where `strongbox-distribution` is located -(in other words - `strongbox-distribution/../strongbox-vault`). Check the [Application Properties](/user-guide/application-properties.md) +(in other words - `strongbox-distribution/../strongbox-vault`). Check the [Application Properties](./user-guide/application-properties.md) section to see which property to override to change the default location. ### Directory structure @@ -31,7 +31,7 @@ section to see which property to override to change the default location. * `strongbox-vault/` * `cache/` * `db/` - * [storages](/knowledge-base/storages/)/ + * [storages](./knowledge-base/storages.html)/ * `${storageId}/` * `${repositoryId}/` * [.index/](../developer-guide/maven-indexer.md#where-are-the-maven-indexes-located) diff --git a/docs/user-guide/ui/user-management.md b/docs/user-guide/ui/user-management.md index 86e46312..6473999f 100644 --- a/docs/user-guide/ui/user-management.md +++ b/docs/user-guide/ui/user-management.md @@ -1,9 +1,9 @@ ## Intro -The user management module allows you to list/add/update/delete users fine-tune their access level to Strongbox. +The user management module allows you to list/add/update/delete users and fine-tune their access level to Strongbox. ## Access Model -TODO: Add mode information about this later. (SB-1339; SB-1285) + diff --git a/docs/user-guide/upgrading.md b/docs/user-guide/upgrading.md index 129686df..f069b8c1 100644 --- a/docs/user-guide/upgrading.md +++ b/docs/user-guide/upgrading.md @@ -1,7 +1,7 @@ # Upgrading Strongbox -We try to test everything as through as possible. However Strongbox is still under development and sometimes things -could go wrong. This is why +We try to test everything as thorough as possible. However, Strongbox is still under development and sometimes things +could go wrong. This is why: !!! danger **YOU SHOULD ALWAYS CREATE A BACKUP OF YOUR [`STRONGBOX_VAULT`](./application-properties.md) and From 335838b0a357614de8fbf04a40a95921e3a578db Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 15:12:30 -0600 Subject: [PATCH 09/34] Corrections Tried again to correct the storage link based on the same link on a different page --- docs/user-guide/directory-structure.md | 2 +- docs/user-guide/ui/system-information.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/user-guide/directory-structure.md b/docs/user-guide/directory-structure.md index f0f82592..6b9ab463 100644 --- a/docs/user-guide/directory-structure.md +++ b/docs/user-guide/directory-structure.md @@ -31,7 +31,7 @@ section to see which property to override to change the default location. * `strongbox-vault/` * `cache/` * `db/` - * [storages](./knowledge-base/storages.html)/ + * [storages](../../knowledge-base/storages.html)/ * `${storageId}/` * `${repositoryId}/` * [.index/](../developer-guide/maven-indexer.md#where-are-the-maven-indexes-located) diff --git a/docs/user-guide/ui/system-information.md b/docs/user-guide/ui/system-information.md index c978b3d5..0035c929 100644 --- a/docs/user-guide/ui/system-information.md +++ b/docs/user-guide/ui/system-information.md @@ -1,7 +1,7 @@ # System Information This module provides information about the environment where Strongbox is currently running. -To make your live easier, we've included a `search` filter so that you can find what you're looking for faster. +To make your life easier, we've included a `search` filter so that you can find what you're looking for faster. ## JVM Arguments From d1c8a10b6aa5183be7f8ed01fed076bef2648308 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 15:30:04 -0600 Subject: [PATCH 10/34] Update artifact-query-language.md --- docs/user-guide/artifact-query-language.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/user-guide/artifact-query-language.md b/docs/user-guide/artifact-query-language.md index 7b51477d..83febc0e 100644 --- a/docs/user-guide/artifact-query-language.md +++ b/docs/user-guide/artifact-query-language.md @@ -33,10 +33,10 @@ needs to work the same across all layouts: ### Values -* _**Values**_ can be strings: +* _**Values**_ can be strings * Quoted with single quotes `'` when the value is more than one word (for example: `storage: storage0`, `layout: 'Maven 2'`) - * Separated with comma `,` for multiple values; you can consider this the same as `IN` operator in SQL (for example: `repository: releases, snapshots`, `layout: 'Maven 2', NuGet`) + * Separated with a comma `,` for multiple values; you can consider this the same as `IN` operator in SQL (for example: `repository: releases, snapshots`, `layout: 'Maven 2', NuGet`) * Wildcards are supported `*` (for example: `group: org.carlspring.*`) * _**Values**_ can be dates in Unicode format: `2018-03-21 13:00:00`, `2018-03-21` (for example: `updated: 2018-03-21`, `updated: '2018-03-21 13:00'`) From 8bbbbb93a86fb6c9b3a998dbac5f895fe2f857e3 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 15:48:03 -0600 Subject: [PATCH 11/34] Grammer update Small grammer corrections --- docs/developer-guide/building-the-code.md | 2 +- docs/user-guide/artifact-query-language.md | 2 +- docs/user-guide/artifact-routing-rules.md | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/developer-guide/building-the-code.md b/docs/developer-guide/building-the-code.md index a49e9aa6..718f229f 100644 --- a/docs/developer-guide/building-the-code.md +++ b/docs/developer-guide/building-the-code.md @@ -77,7 +77,7 @@ Then please make sure that: * You don't have any other test in progress (e.g. halted by debugger process) -The reason for this failure is that OrientDB can't start, if another OrientDB process is running an listening on the same port. +The reason for this failure is that OrientDB can't start, if another OrientDB process is running and listening on the same port. ### Filename too long (Windows 7 and 10) diff --git a/docs/user-guide/artifact-query-language.md b/docs/user-guide/artifact-query-language.md index 83febc0e..8500ce18 100644 --- a/docs/user-guide/artifact-query-language.md +++ b/docs/user-guide/artifact-query-language.md @@ -94,7 +94,7 @@ needs to work the same across all layouts: ## How to use -The easiest way to AQL is by using the search bar in the user interface. Once you start writing, you will see suggestions +The easiest way to use AQL is by using the search bar in the user interface. Once you start writing, you will see suggestions based on what you've typed. You could also directly search via the REST API Endpoint. Example `curl` request: diff --git a/docs/user-guide/artifact-routing-rules.md b/docs/user-guide/artifact-routing-rules.md index 82692b1f..19a2ff52 100644 --- a/docs/user-guide/artifact-routing-rules.md +++ b/docs/user-guide/artifact-routing-rules.md @@ -88,7 +88,7 @@ Example: ### Denied Patterns -* The following example disable lookups for `.*(com|org)/carlspring.*` in the group repository identified by `storage-id` equal to `storage-common-proxies` and `repository-id` equal to `group-common-proxies` in the underlying repository identified by `storage-id` equal to `storage-common-proxies` and `repository-id` equal to `jboss-public-releases`. +* The following example disables lookups for `.*(com|org)/carlspring.*` in the group repository identified by `storage-id` equal to `storage-common-proxies` and `repository-id` equal to `group-common-proxies` in the underlying repository identified by `storage-id` equal to `storage-common-proxies` and `repository-id` equal to `jboss-public-releases`. To put it more simply, if someone tries to access `.*(com|org)/carlspring.*` from group repository `storage-id="storage-common-proxies" repository-id="group-common-proxies"` then this group repository won't serve this request from repository `storage-id="storage-common-proxies" repository-id="jboss-public-releases"`, for sure. From f487dcb9e567611122173d24758f9d5b4ef86022 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 6 Jun 2019 15:58:58 -0600 Subject: [PATCH 12/34] Grammer updates --- docs/developer-guide/building-the-code-with-docker.md | 8 ++++---- docs/developer-guide/building-the-code.md | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/developer-guide/building-the-code-with-docker.md b/docs/developer-guide/building-the-code-with-docker.md index 50d5d390..ecda192b 100644 --- a/docs/developer-guide/building-the-code-with-docker.md +++ b/docs/developer-guide/building-the-code-with-docker.md @@ -12,7 +12,7 @@ However, things under Windows shouldn't be that different. ## Docker installation -Depending on your OS and distribution you can install different versions of Docker CE (Community Edition). +Depending on your OS and distribution, you can install different versions of Docker CE (Community Edition). In most cases your distribution will have it's own package of Docker which works fine. Please head to the docker [installation manual](https://docs.docker.com/install/) pages to check how to install it on your machine: @@ -49,7 +49,7 @@ uid=1000(your-username) gid=1000(your-username) groups=1000(your-username) ``` If you see another `uid/gid` you will likely hit a permission issue. Unfortunately [docker/compose#3328][issue-3328], -[docker/compose#4700][issue-4700] and [docker/cli#1318][issue-1318] are preventing `docker-compose` from being able to +[docker/compose#4700][issue-4700], and [docker/cli#1318][issue-1318] are preventing `docker-compose` from being able to automatically fix the group id. There are two workarounds which you can apply for things to work as expected: 1. Instead of using `docker-compose`, you can use plain `docker` and pass ```--group-add `id -g` ``` to the arguments. @@ -137,7 +137,7 @@ Our `.bashrc` has two types of commands which: 1. Start a container by mounting the current working directory as `workspace` (i.e `dockerMvn35`, `dockerGradle45`, etc) 2. Start a container and automatically clone a project from github and use that as the `workspace`. (i.e. `dockerMvn35Checkout`, `dockerGradle45Checkout`, etc) -If you don't remember arguments the command needs you can always execute `dockerMvn35 --help` and it will print them to you as well as an example. +If you don't remember arguments the command needs, you can always execute `dockerMvn35 --help` and it will print them to you as well as an example. ### Setting up `~/.bashrc` @@ -151,7 +151,7 @@ echo "\$HOME/.bashrc-strongbox" >> ~/.bashrc ``` You can now either open up a new terminal or execute `source ~/.bashrc` -Have fun building things in docker :smile: +Have fun building things in docker! :smile: ### Example commands diff --git a/docs/developer-guide/building-the-code.md b/docs/developer-guide/building-the-code.md index 718f229f..d072f2a4 100644 --- a/docs/developer-guide/building-the-code.md +++ b/docs/developer-guide/building-the-code.md @@ -96,7 +96,7 @@ If you are getting one of these errors: Then you are likely hitting a well-known issue with long paths under Windows. -Executing command below should fix the issue: +Executing the command below should fix the issue: ``` git config --system core.longpaths true From ce8cd571ef5fb21327127933f6b6ee0f89908c34 Mon Sep 17 00:00:00 2001 From: Mike Zwiener Date: Mon, 10 Jun 2019 12:52:04 -0600 Subject: [PATCH 13/34] Update rebase-vs-merge.md --- docs/developer-guide/git/rebase-vs-merge.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/developer-guide/git/rebase-vs-merge.md b/docs/developer-guide/git/rebase-vs-merge.md index a9ff5ef8..5f87809a 100644 --- a/docs/developer-guide/git/rebase-vs-merge.md +++ b/docs/developer-guide/git/rebase-vs-merge.md @@ -3,7 +3,7 @@ ## Conceptual Overview The first thing to understand about `git rebase` is that it solves the same problem as git merge. Both of these commands -are designed to integrate changes from one branch into another branch. T hey just do it in very different ways. +are designed to integrate changes from one branch into another branch. They just do it in very different ways. Consider what happens when you start working on a new feature in a dedicated branch, then another team member updates the `master` branch with new commits. This results in a forked history, which should be familiar to anyone who has used From 54806e34348bccb10cc331dc0e6378b43cf688bf Mon Sep 17 00:00:00 2001 From: Mike Zwiener Date: Mon, 10 Jun 2019 12:52:54 -0600 Subject: [PATCH 14/34] Update rebase-vs-merge.md --- docs/developer-guide/git/rebase-vs-merge.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/developer-guide/git/rebase-vs-merge.md b/docs/developer-guide/git/rebase-vs-merge.md index 5f87809a..51c48986 100644 --- a/docs/developer-guide/git/rebase-vs-merge.md +++ b/docs/developer-guide/git/rebase-vs-merge.md @@ -97,7 +97,7 @@ However, before executing this command, please be **sure** nobody else is workin ## But how do I rebase? Before you start, it is a good idea to backup your current project. If this is your first time doing a rebase, you can -screw things up and loose/damage the work you've already done. So better safe than sorry. (If you are a pro - what are +screw things up and lose/damage the work you've already done. So better safe than sorry. (If you are a pro - what are you even doing here? :smile: ) From f4036232ceb65dc6d3f9498113fd5ace5e8ac5be Mon Sep 17 00:00:00 2001 From: Mike Zwiener Date: Mon, 10 Jun 2019 12:54:04 -0600 Subject: [PATCH 15/34] Update artifact-query-language.md --- docs/user-guide/artifact-query-language.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/user-guide/artifact-query-language.md b/docs/user-guide/artifact-query-language.md index 8500ce18..0b32040f 100644 --- a/docs/user-guide/artifact-query-language.md +++ b/docs/user-guide/artifact-query-language.md @@ -36,7 +36,7 @@ needs to work the same across all layouts: * _**Values**_ can be strings * Quoted with single quotes `'` when the value is more than one word (for example: `storage: storage0`, `layout: 'Maven 2'`) - * Separated with a comma `,` for multiple values; you can consider this the same as `IN` operator in SQL (for example: `repository: releases, snapshots`, `layout: 'Maven 2', NuGet`) + * Separated by a comma `,` for multiple values; you can consider this the same as `IN` operator in SQL (for example: `repository: releases, snapshots`, `layout: 'Maven 2', NuGet`) * Wildcards are supported `*` (for example: `group: org.carlspring.*`) * _**Values**_ can be dates in Unicode format: `2018-03-21 13:00:00`, `2018-03-21` (for example: `updated: 2018-03-21`, `updated: '2018-03-21 13:00'`) From 2beb7065f85a767869f60d42c2aac02d68d6b51b Mon Sep 17 00:00:00 2001 From: Mike Zwiener Date: Mon, 10 Jun 2019 12:54:36 -0600 Subject: [PATCH 16/34] Update artifact-query-language.md --- docs/user-guide/artifact-query-language.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/user-guide/artifact-query-language.md b/docs/user-guide/artifact-query-language.md index 0b32040f..207d2502 100644 --- a/docs/user-guide/artifact-query-language.md +++ b/docs/user-guide/artifact-query-language.md @@ -94,7 +94,7 @@ needs to work the same across all layouts: ## How to use -The easiest way to use AQL is by using the search bar in the user interface. Once you start writing, you will see suggestions +The easiest way to use the AQL is by using the search bar in the user interface. Once you start writing, you will see suggestions based on what you've typed. You could also directly search via the REST API Endpoint. Example `curl` request: From 0cc5a76bbbab6353489e1e015ad5a2722ae650fc Mon Sep 17 00:00:00 2001 From: Martin Todorov Date: Mon, 10 Jun 2019 21:22:22 +0100 Subject: [PATCH 17/34] Update artifact-query-language.md --- docs/user-guide/artifact-query-language.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/docs/user-guide/artifact-query-language.md b/docs/user-guide/artifact-query-language.md index 207d2502..ffdd81ed 100644 --- a/docs/user-guide/artifact-query-language.md +++ b/docs/user-guide/artifact-query-language.md @@ -94,8 +94,7 @@ needs to work the same across all layouts: ## How to use -The easiest way to use the AQL is by using the search bar in the user interface. Once you start writing, you will see suggestions -based on what you've typed. You could also directly search via the REST API Endpoint. +The easiest way to use the AQL is by using the search bar in the user interface. As soon as you start typing, you will see suggestions based on what you've typed. You could also directly search via the REST API end-point. Example `curl` request: From 61c915fa3dfe2392e74fb2209ee64018b21da92a Mon Sep 17 00:00:00 2001 From: Mike Zwiener Date: Mon, 10 Jun 2019 14:52:46 -0600 Subject: [PATCH 18/34] Update getting-started.md This should have corrected the systemd instances back to systemd where appropriate. Please let me know if there are any that I missed. --- docs/user-guide/getting-started.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/user-guide/getting-started.md b/docs/user-guide/getting-started.md index 822ba9f6..53fabee3 100644 --- a/docs/user-guide/getting-started.md +++ b/docs/user-guide/getting-started.md @@ -29,12 +29,12 @@ tar -zxf /path/to/strongbox-distribution*.tar.gz \ -C /opt/strongbox \ --strip-components=2 -# If you just want to start Strongbox without installing the system service: +# If you just want to start Strongbox without installing the systemd service: /opt/strongbox/bin/strongbox console # If you want to install Strongbox as a service then download the -# system service file. Make sure to change the `Environment` variables +# systemd service file. Make sure to change the `Environment` variables # in the service file where necessary. Depending on your distribution, # you could also move the environment variables into `EnvironmentFile` # and load that instead. From 6f01e56c69258adc936d3d8491d805f061c2f256 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 10 Jun 2019 15:30:41 -0600 Subject: [PATCH 19/34] More minor grammar corrections --- .../building-strongbox-against-strongbox.md | 7 +++---- .../building-the-code-with-docker.md | 12 ++++++------ docs/developer-guide/ide-setup/eclipse.md | 10 +++++----- docs/developer-guide/project-structure.md | 17 ++++++++--------- 4 files changed, 22 insertions(+), 24 deletions(-) diff --git a/docs/developer-guide/building-strongbox-against-strongbox.md b/docs/developer-guide/building-strongbox-against-strongbox.md index ef6060cb..f43de920 100644 --- a/docs/developer-guide/building-strongbox-against-strongbox.md +++ b/docs/developer-guide/building-strongbox-against-strongbox.md @@ -2,7 +2,7 @@ We like our dog food and we try it all the time! :smiley: -There will be many cases where you need to test things against either a full-blown Strongbox (via `strongbox-distribution`), +There will be many cases where you need to test things against either a full-blown Strongbox (via `strongbox-distribution`) or the `strongbox-web-core`. The following article shows you how to do so. ## Pre-requisites @@ -64,14 +64,13 @@ You will need to use the following Maven settings file (that we've called `setti ``` -This settings file will ensure that all required artifacts, plugins and extensions are resolved via the running instance -of Strongbox. In addition, it will override Maven Central as a fallback repository, so everything required will indeed +This settings file will ensure that all required artifacts, plugins and extensions are resolved via the running instance of Strongbox. In addition, it will override Maven Central as a fallback repository, so everything required will indeed be resolved through `http://localhost:48080/storages/public/public-group/` which is a group repository that includes all the hosted repositories in Strongbox, as well as all defined proxy repositories. ## Building Strongbox Against The `strongbox-web-core` -1. Checkout and build the `strongbox` project (either with `mvn clean install`, or `mvn clean install -DskipTests`, based on your needs) +1. Check out and build the `strongbox` project (either with `mvn clean install`, or `mvn clean install -DskipTests`, based on your needs) 2. In the `strongbox-web-core` module, execute the following in order to start Strongbox inside a Jetty instance waiting for connections: ``` mvn clean install spring-boot:run diff --git a/docs/developer-guide/building-the-code-with-docker.md b/docs/developer-guide/building-the-code-with-docker.md index ecda192b..f5b1dc86 100644 --- a/docs/developer-guide/building-the-code-with-docker.md +++ b/docs/developer-guide/building-the-code-with-docker.md @@ -3,17 +3,17 @@ ## Introduction Docker is awesome and we are using it to build and test almost everything. -It has proven to be quite fast and convenient way to easily reproduce issues. -We encourage you to have a decent version of Docker installed on your machine +It has proven to be quite a fast and convenient way to easily reproduce issues. +We encourage you to have a recent version of Docker installed on your machine so that you can debug or reproduce issues easier. -You should note that we are mostly using Linux so this guide is more focused on how to do things on Linux distributions. +You should note that we are mostly using Linux, so this guide is more focused on how to do things on Linux distributions. However, things under Windows shouldn't be that different. ## Docker installation Depending on your OS and distribution, you can install different versions of Docker CE (Community Edition). -In most cases your distribution will have it's own package of Docker which works fine. +In most cases, your distribution will have its own package of Docker which works fine. Please head to the docker [installation manual](https://docs.docker.com/install/) pages to check how to install it on your machine: @@ -127,7 +127,7 @@ This might take a while, but in the end you should have a successful build. ## Making life easier -If you have already checked out our [strongboxci/alpine] repository you would have noticed the amount of +If you have already checked out our [strongboxci/alpine] repository you would have noticed the number of different images we have. Trying to remember all of them and the way you need to setup the container is tedious and unnecessary. We have created a [.bashrc]({{resources}}/docker/bashrc-strongbox) with commands you can execute to easily get a container up and running @@ -166,7 +166,7 @@ Have fun building things in docker! :smile: dockerMvn35Checkout strongbox master/branch/PR-1234 "mvn clean install" ``` -* Use current working directory to build project +* Use the current working directory to build the project ``` cd /some/path dockerMvn35 diff --git a/docs/developer-guide/ide-setup/eclipse.md b/docs/developer-guide/ide-setup/eclipse.md index 6dcff9c9..d0e92c2a 100644 --- a/docs/developer-guide/ide-setup/eclipse.md +++ b/docs/developer-guide/ide-setup/eclipse.md @@ -1,6 +1,6 @@ # Eclipse -!!! tip "Before continuing, please make sure you've built the code using [Building the code] section." +!!! tip "Before continuing, please make sure you've built the code using the [Building the code] section." ## Choose Eclipse distribution The `Eclipse IDE for Java Developers` package is a sufficient base for strongbox project development. @@ -23,7 +23,7 @@ You should already have created an empty workspace - this is the default behavio ### Import Maven project * Choose `File -> Import -> Maven -> Existing Maven Projects` * Point the `Root Directory` to the strongbox cloned repository. -* Click `Finish` button. +* Click the `Finish` button. ![Import -> Existing Maven Project -> Finish][Import Maven Project] ### Workaround m2e connectors @@ -42,11 +42,11 @@ If a popup `Discover m2e connectors` appears - click `Resolve All Later` and `Fi ![strongbox-storage-nuget-layout-provider/src/main/antlr4 -> Build Path -> Use as Source Folder][Nuget ANTLR Build Path] ### Configure `strongbox-aql` project -* Expand the `src/main` directory and select `groovy` and `twig` folders, then right click and pick `Build path -> Use as Source Folder` +* Expand the `src/main` directory and select the `groovy` and `twig` folders, then right click and pick `Build path -> Use as Source Folder` ![strongbox-aql/src/main/groovy & twig -> Build Path -> Use as Source Folder][AQL groovy and twig Build Path] -* Right click the project and pick Properties - * `Java Build Path -> Libraries -> Add Library -> Groovy Runtime Libraries`. Note that if on right click you pick directly Build path adding the groovy libraries gives an error +* Right click the project and cick Properties + * `Java Build Path -> Libraries -> Add Library -> Groovy Runtime Libraries`. Note that if on right click you pick Build path directly, adding the groovy libraries gives an error ![strongbox-aql -> Properties -> Java Build Path -> Add Library -> Groovy Runtime Libraries][AQL groovy project nature] * `Project Natures -> Add -> Groovy Nature` ![strongbox-aql -> Properties -> Project Natures -> Add -> Confirm Project Nature update -> Groovy Nature][AQL groovy libraries in Build Path] diff --git a/docs/developer-guide/project-structure.md b/docs/developer-guide/project-structure.md index cd7a5734..a9bc4ef6 100644 --- a/docs/developer-guide/project-structure.md +++ b/docs/developer-guide/project-structure.md @@ -5,7 +5,7 @@ ### Core Modules All the core modules are located under the [Strongbox] project. Each of these modules has a `README.md` file explaining -briefly what kind of code contains. New modules should also follow the same format. +briefly what kind of code it contains. New modules should also follow the same format. This is a brief breakdown of the modules: @@ -43,7 +43,7 @@ This is a brief breakdown of the modules: * [strongbox-resources] * [strongbox-common-resources] - This is the place where common resources which can be used by multiple projects reside. The idea is not have to + Contains common resources that can be used by multiple projects. The idea is not to have to duplicate things such as `logback*xml`, keystores and so on across the other modules. These resources are copied using the `maven-dependency-plugin`. @@ -76,7 +76,7 @@ This is a brief breakdown of the modules: Contains the code for the storage related modules. * [strongbox-storage-api] - Contains the the storage API. + Contains the storage API. * [strongbox-storage-core] Contains the core classes for the storage API. @@ -99,7 +99,7 @@ This is a brief breakdown of the modules: * [strongbox-storage-p2-layout-provider] This is an incomplete early draft implementation of the P2 OSGi layout provider. This module needs a lot more - work, before the P2 layout provider could be usable. + work before the P2 layout provider could be usable. * [strongbox-storage-raw-layout-provider] This is the implementation of the [Raw layout provider]. @@ -127,10 +127,10 @@ All the [Strongbox] modules are organized under the [Strongbox organization]. ### Creating New Modules/Projects -* Each new modules needs to extend the `strongbox-parent`, from where it should be extending the dependencies and the +* Each new module needs to extend the `strongbox-parent`, from where it should be extending the dependencies and the configuration for Maven plugins. Modules should not contain any artifact or plugin versions. -* All modules need to have a `README.md` file describing in brief what the module is and give brief pointers +* All modules need to have a `README.md` file describing, in brief, what the module is and give brief pointers on what classes and tests are of primary interest. * Each project in the [Strongbox organization] needs to have a copy of the [LICENSE] file. @@ -144,12 +144,11 @@ All the [Strongbox] modules are organized under the [Strongbox organization]. The web integration tests are located in the [strongbox-web-integration-tests] project. They are using the [maven-invoker-plugin] to execute various tests against a Strongbox instance which is started for this purpose. These tests start Maven processes via the [maven-invoker-plugin] -and are literally mimicking Maven behaviour. The outcome of the tests is validated using Groovy scripts. +and are literally mimicking Maven behavior. The outcome of the tests is validated using Groovy scripts. ## Packaging Modules -For a much more lightweight build the modules which carry out the actual packaging into assemblies and distributions, -these have been extracted into separate projects under the organization. +For a much more lightweight build the modules, which carry out the actual packaging into assemblies and distributions, have been extracted into separate projects under the organization. ## See Also * [Writing Tests](./writing-tests.md) From 53643ed8cf36d35acc0f979e7ecd5537896051a2 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 10 Jun 2019 16:09:48 -0600 Subject: [PATCH 20/34] Update coding-convention.md --- docs/developer-guide/coding-convention.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/developer-guide/coding-convention.md b/docs/developer-guide/coding-convention.md index e9460264..af5083f5 100644 --- a/docs/developer-guide/coding-convention.md +++ b/docs/developer-guide/coding-convention.md @@ -3,7 +3,7 @@ ## Reasoning It is important to have consistency across the codebase. This won't necessarily make your code work better, but it might -help make it more understandable, time-consuming and less irritating to go through when doing a code review of your changes. +help make it more understandable, time-consuming, and less irritating to go through when doing a code review of your changes. While to some this will seem like a nuisance, with no real benefit to the actual code, and while we do understand this point of view, we think that reading `diff`-s should be quick and easy. Accepting a pull request requires for it to @@ -62,13 +62,13 @@ and whether, or not it will impact something else. All of this takes time, which ``` * When re-indenting code, please make a single commit with just the indentation changes and make sure you describe that - this is just an re-indentation change in the commit message. Mixing reformatting and actual functional changes in the + this is just a re-indentation change in the commit message. Mixing reformatting and actual functional changes in the same commit makes things much more obscure to track and figure out. * Don't reformat entire files, unless absolutely necessary! This makes it harder (and more time-consuming) to check what changes you've actually made. -* Try not to re-order code imports. Sometimes, while optimizing imports this is not possible, but re-ordering a long +* Try not to re-order code imports. Sometimes, while optimizing imports, this is not possible, but re-ordering a long list of imports can make a diff hard to read. ## Code Example From 9a2058c7e6ba6f2f43d0daebe5f0748360919919 Mon Sep 17 00:00:00 2001 From: Mike Zwiener Date: Mon, 17 Jun 2019 15:02:22 -0500 Subject: [PATCH 21/34] Update docs/developer-guide/building-the-code-with-docker.md The use of a comma is needed because there is a list of items. Starting with [docker/compose#3328][issue-3328]. It includes this issue, issue 4700, and finally issue 1318. There should be a comma before the and in a list. Co-Authored-By: Steve Todorov --- docs/developer-guide/building-the-code-with-docker.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/developer-guide/building-the-code-with-docker.md b/docs/developer-guide/building-the-code-with-docker.md index f5b1dc86..57346936 100644 --- a/docs/developer-guide/building-the-code-with-docker.md +++ b/docs/developer-guide/building-the-code-with-docker.md @@ -49,7 +49,7 @@ uid=1000(your-username) gid=1000(your-username) groups=1000(your-username) ``` If you see another `uid/gid` you will likely hit a permission issue. Unfortunately [docker/compose#3328][issue-3328], -[docker/compose#4700][issue-4700], and [docker/cli#1318][issue-1318] are preventing `docker-compose` from being able to +[docker/compose#4700][issue-4700] and [docker/cli#1318][issue-1318] are preventing `docker-compose` from being able to automatically fix the group id. There are two workarounds which you can apply for things to work as expected: 1. Instead of using `docker-compose`, you can use plain `docker` and pass ```--group-add `id -g` ``` to the arguments. From 9f048da7079bb6c7ebd2fbe4b7a5ad92ab917466 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 17 Jun 2019 14:51:31 -0600 Subject: [PATCH 22/34] Links Corrected links to point to correct location --- .../configuration-files/strongbox-cron-tasks-yaml.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/user-guide/configuration-files/strongbox-cron-tasks-yaml.md b/docs/user-guide/configuration-files/strongbox-cron-tasks-yaml.md index 501be040..e4948632 100644 --- a/docs/user-guide/configuration-files/strongbox-cron-tasks-yaml.md +++ b/docs/user-guide/configuration-files/strongbox-cron-tasks-yaml.md @@ -35,18 +35,18 @@ Every cron task configuration is a `cronTaskConfigurations` array element. Inner | Description | Implementation | Mandatory properties | Optional properties | | ------------- | ------------- | ------------- | ------------- | -| [Empty Trash](https://github.com/strongbox/strongbox/wiki/Cron-Tasks#empty-trash) | `org.carlspring.strongbox.cron.jobs.ClearRepositoryTrashCronJob` ||`storageId`
`repositoryId`| -| [Regenerate Checksums](https://github.com/strongbox/strongbox/wiki/Cron-Tasks#regenerate-checksums) | `org.carlspring.strongbox.cron.jobs.RegenerateChecksumCronJob` ||`storageId`
`repositoryId`
`basePath`
`forceRegeneration`| +| [Empty Trash](https://github.com/strongbox/strongbox/tree/master/strongbox-cron/strongbox-cron-tasks/src/main/java/org/carlspring/strongbox/cron/jobs) | `org.carlspring.strongbox.cron.jobs.ClearRepositoryTrashCronJob` ||`storageId`
`repositoryId`| +| [Regenerate Checksums](https://github.com/strongbox/strongbox/tree/master/strongbox-cron/strongbox-cron-tasks/src/main/java/org/carlspring/strongbox/cron/jobs) | `org.carlspring.strongbox.cron.jobs.RegenerateChecksumCronJob` ||`storageId`
`repositoryId`
`basePath`
`forceRegeneration`| | Cleanup Expired Artifacts From Proxy Repositories | `org.carlspring.strongbox.cron.jobs.CleanupExpiredArtifactsFromProxyRepositoriesCronJob` |`lastAccessedTimeInDays`|`minSizeInBytes`| ### Maven-Specific Cron Task Configuration | Description | Implementation | Mandatory properties | Optional properties | | ------------- | ------------- | ------------- | ------------- | -| [Rebuild Maven Metadata](https://github.com/strongbox/strongbox/wiki/Cron-Tasks#rebuild-maven-metadata) | `org.carlspring.strongbox.cron.jobs.RebuildMavenMetadataCronJob` ||`storageId`
`repositoryId`
`basePath`| -| [Rebuild Maven Indexes](https://github.com/strongbox/strongbox/wiki/Cron-Tasks#rebuild-maven-indexes) | `org.carlspring.strongbox.cron.jobs.RebuildMavenIndexesCronJob` |`storageId`
`repositoryId`|`basePath`| -| [Download Remote Indexes](https://github.com/strongbox/strongbox/wiki/Cron-Tasks#download-remote-indexes-maven-repositories-only) | `org.carlspring.strongbox.cron.jobs.DownloadRemoteMavenIndexCronJob` |`storageId`
`repositoryId`|| -| [Remove Timestamped Snapshot Artifacts](https://github.com/strongbox/strongbox/wiki/Cron-Tasks#remove-timestamped-maven-snapshot-artifacts) | `org.carlspring.strongbox.cron.jobs.RemoveTimestampedMavenSnapshotCronJob` ||`storageId`
`repositoryId`
`basePath`
`numberToKeep`
`keepPeriod`| +| [Rebuild Maven Metadata]https://github.com/strongbox/strongbox/blob/fea19c505ebf09f119e15e7359275a428c8c86ee/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-maven-layout/strongbox-storage-maven-layout-provider/src/main/java/org/carlspring/strongbox/cron/jobs/RebuildMavenMetadataCronJob.java) | `org.carlspring.strongbox.cron.jobs.RebuildMavenMetadataCronJob` ||`storageId`
`repositoryId`
`basePath`| +| [Rebuild Maven Indexes](https://github.com/strongbox/strongbox/blob/fea19c505ebf09f119e15e7359275a428c8c86ee/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-maven-layout/strongbox-storage-maven-layout-provider/src/main/java/org/carlspring/strongbox/cron/jobs/RebuildMavenIndexesCronJob.java) | `org.carlspring.strongbox.cron.jobs.RebuildMavenIndexesCronJob` |`storageId`
`repositoryId`|`basePath`| +| [Download Remote Indexes](https://github.com/strongbox/strongbox/blob/fea19c505ebf09f119e15e7359275a428c8c86ee/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-maven-layout/strongbox-storage-maven-layout-provider/src/main/java/org/carlspring/strongbox/cron/jobs/DownloadRemoteMavenIndexCronJob.java) | `org.carlspring.strongbox.cron.jobs.DownloadRemoteMavenIndexCronJob` |`storageId`
`repositoryId`|| +| [Remove Timestamped Snapshot Artifacts](https://github.com/strongbox/strongbox/blob/fea19c505ebf09f119e15e7359275a428c8c86ee/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-maven-layout/strongbox-storage-maven-layout-provider/src/main/java/org/carlspring/strongbox/cron/jobs/RemoveTimestampedMavenSnapshotCronJob.java) | `org.carlspring.strongbox.cron.jobs.RemoveTimestampedMavenSnapshotCronJob` ||`storageId`
`repositoryId`
`basePath`
`numberToKeep`
`keepPeriod`| ### Nuget-Specific Cron Task Configuration From ee09c7a2ef829b5b31603c6473ec3dfdad10febb Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 17 Jun 2019 15:11:08 -0600 Subject: [PATCH 23/34] Comments Should correct all comments made including readding the TODOs --- docs/developer-guide/building-strongbox-against-strongbox.md | 2 +- docs/developer-guide/ide-setup/eclipse.md | 2 +- docs/user-guide/artifact-query-language.md | 2 +- .../configuration-files/strongbox-security-users-yaml.md | 4 ++-- docs/user-guide/directory-structure.md | 2 +- docs/user-guide/ui/user-management.md | 1 + 6 files changed, 7 insertions(+), 6 deletions(-) diff --git a/docs/developer-guide/building-strongbox-against-strongbox.md b/docs/developer-guide/building-strongbox-against-strongbox.md index f43de920..3192f8f1 100644 --- a/docs/developer-guide/building-strongbox-against-strongbox.md +++ b/docs/developer-guide/building-strongbox-against-strongbox.md @@ -70,7 +70,7 @@ all the hosted repositories in Strongbox, as well as all defined proxy repositor ## Building Strongbox Against The `strongbox-web-core` -1. Check out and build the `strongbox` project (either with `mvn clean install`, or `mvn clean install -DskipTests`, based on your needs) +1. Clone and build the `strongbox` project (either with `mvn clean install`, or `mvn clean install -DskipTests`, based on your needs) 2. In the `strongbox-web-core` module, execute the following in order to start Strongbox inside a Jetty instance waiting for connections: ``` mvn clean install spring-boot:run diff --git a/docs/developer-guide/ide-setup/eclipse.md b/docs/developer-guide/ide-setup/eclipse.md index d0e92c2a..1e1c92a6 100644 --- a/docs/developer-guide/ide-setup/eclipse.md +++ b/docs/developer-guide/ide-setup/eclipse.md @@ -45,7 +45,7 @@ If a popup `Discover m2e connectors` appears - click `Resolve All Later` and `Fi * Expand the `src/main` directory and select the `groovy` and `twig` folders, then right click and pick `Build path -> Use as Source Folder` ![strongbox-aql/src/main/groovy & twig -> Build Path -> Use as Source Folder][AQL groovy and twig Build Path] -* Right click the project and cick Properties +* Right click the project and click Properties * `Java Build Path -> Libraries -> Add Library -> Groovy Runtime Libraries`. Note that if on right click you pick Build path directly, adding the groovy libraries gives an error ![strongbox-aql -> Properties -> Java Build Path -> Add Library -> Groovy Runtime Libraries][AQL groovy project nature] * `Project Natures -> Add -> Groovy Nature` diff --git a/docs/user-guide/artifact-query-language.md b/docs/user-guide/artifact-query-language.md index ffdd81ed..17b10748 100644 --- a/docs/user-guide/artifact-query-language.md +++ b/docs/user-guide/artifact-query-language.md @@ -94,7 +94,7 @@ needs to work the same across all layouts: ## How to use -The easiest way to use the AQL is by using the search bar in the user interface. As soon as you start typing, you will see suggestions based on what you've typed. You could also directly search via the REST API end-point. +The easiest way to use the AQL is by using the search bar in the user interface. As soon as you start typing, you will see suggestions based on what you've typed. You could also directly search via the REST API endpoint. Example `curl` request: diff --git a/docs/user-guide/configuration-files/strongbox-security-users-yaml.md b/docs/user-guide/configuration-files/strongbox-security-users-yaml.md index 4e4b91b3..126263a1 100644 --- a/docs/user-guide/configuration-files/strongbox-security-users-yaml.md +++ b/docs/user-guide/configuration-files/strongbox-security-users-yaml.md @@ -1,6 +1,6 @@ # The `strongbox-security-users.yaml` File - +TODO @sbespalov # Example `strongbox-security-users.yaml` File @@ -69,7 +69,7 @@ The `access-model` element is optional. ### Configuring The User Access Model - +TODO @sbespalov ## Information for Developers diff --git a/docs/user-guide/directory-structure.md b/docs/user-guide/directory-structure.md index 6b9ab463..e07b52ac 100644 --- a/docs/user-guide/directory-structure.md +++ b/docs/user-guide/directory-structure.md @@ -23,7 +23,7 @@ When you download and extract `strongbox-distribution.tar.gz`, you will find the The vault is the work area of the server. This includes things like the cache, location of the OrientDB files, storages and temporary directory. You can find this directory right next to where `strongbox-distribution` is located -(in other words - `strongbox-distribution/../strongbox-vault`). Check the [Application Properties](./user-guide/application-properties.md) +(in other words - `strongbox-distribution/../strongbox-vault`). Check the [Application Properties](./user-guide/application-properties.html) section to see which property to override to change the default location. ### Directory structure diff --git a/docs/user-guide/ui/user-management.md b/docs/user-guide/ui/user-management.md index 6473999f..e7473553 100644 --- a/docs/user-guide/ui/user-management.md +++ b/docs/user-guide/ui/user-management.md @@ -6,4 +6,5 @@ The user management module allows you to list/add/update/delete users and fine-t ## Access Model +TODO: Add mode information about this later. (SB-1339; SB-1285) From 3411f0029c109885f8d49e03276aa2e999fdb870 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 17 Jun 2019 15:17:53 -0600 Subject: [PATCH 24/34] Update coding-convention.md comma breaks up the flow of the sentence --- docs/developer-guide/coding-convention.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/developer-guide/coding-convention.md b/docs/developer-guide/coding-convention.md index af5083f5..38af55b4 100644 --- a/docs/developer-guide/coding-convention.md +++ b/docs/developer-guide/coding-convention.md @@ -73,7 +73,7 @@ and whether, or not it will impact something else. All of this takes time, which ## Code Example -Please, consider the following an example of how to indent your code. +Please consider the following an example of how to indent your code. ??? success "Example class with proper formatting" From 408105de61798769e33b333def02a6c10e625722 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 17 Jun 2019 15:35:44 -0600 Subject: [PATCH 25/34] Update getting-started-with-persistence.md The http://127.0.0.1:2480/studio/index.html link does not work. I am assuming because the link would become active once the OrientDB has been installed and configured. Should we maybe state (this link will not work until OrientDB has been installed and configured). I am not familiar with Orient and do not know if this location might vary depending on the develoeprs system. In the Creating a DAO layer, I changed the semicolons for periods as each line was a complete sentence. --- .../getting-started-with-persistence.md | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/docs/developer-guide/getting-started-with-persistence.md b/docs/developer-guide/getting-started-with-persistence.md index db9d3c90..ff878b14 100644 --- a/docs/developer-guide/getting-started-with-persistence.md +++ b/docs/developer-guide/getting-started-with-persistence.md @@ -38,7 +38,7 @@ $ cd /opt/strongbox $ STRONGBOX_VAULT=/opt/strongbox-vault STRONGBOX_ORIENTDB_STUDIO_ENABLED=true ./bin/strongbox console ``` -Please, note that the `STRONGBOX_VAULT` environment variable needs to be pointing to an absolute path for this to work. +Please note that the `STRONGBOX_VAULT` environment variable needs to be pointing to an absolute path for this to work. As with the source distribution, you can set additional environment variables to further configure OrientDB Studio: @@ -81,7 +81,7 @@ the `strongbox-data-service` module. ## Creating Your Entity Class Let's now assume that you have a POJO and you need to save it to the database (and that you probably have at least -CRUD operation's implemented in it as well). Place your code under the `org.carlspring.strongbox.domain.yourstuff` +CRUD operations implemented in it as well). Place your code under the `org.carlspring.strongbox.domain.yourstuff` package. For the sake of the example, let's pick `MyEntity` as the name of your entity. If you want to store that entity properly you need to adopt the following rules: @@ -90,7 +90,7 @@ If you want to store that entity properly you need to adopt the following rules: the superclass. * Define getters and setters according to the `JavaBeans` coding convention for all non-transient properties in your class. -* Define a default empty constructor for safety (even if the compiler will create one for you, if you don't define any +* Define a default empty constructor for safety (even if the compiler will create one for you and you don't define any other constructors) and follow the `JPA` and `java.io.Serializable` standards. * Override the `equals() `and `hashCode()` methods according to java `hashCode` contract (because your entity could be used in collection classes such as `java.util.Set` and if you don't define such methods properly other developers or @@ -164,7 +164,7 @@ public class MyEntity ## Creating a DAO Layer -First of all you will need to extend the `CrudService` with the second type parameter that corresponds to your ID's data type. Usually it's just strings. +First of all, you will need to extend the `CrudService` with the second type parameter that corresponds to your ID's data type. Usually it's just strings. !!! tip "To read more about ID's in OrientDB, check the manual" @@ -196,20 +196,20 @@ After that you will need to define an implementation of your service class. Follow these rules for the service implementation: -* Inherit your CRUD service from `CommonCrudService` class; -* Name it like your service interface with an `Impl` suffix, for example `MyEntityServiceImpl`; -* Annotate your class with the Spring `@Service` and `@Transactional` annotations; -* Do **not** define your service class as public and use interface instead of class for injection (with `@Autowired`); - this follows the best practice principles from Joshua Bloch 'Effective Java' book called Programming to Interface; -* _Optional_ - define any methods you need to work with your `MyEntity` class; these methods mostly should be based on - common API form `javax.persistence.EntityManager`, or custom queries (see example below); +* Inherit your CRUD service from the `CommonCrudService` class. +* Name it like your service interface with an `Impl` suffix, for example `MyEntityServiceImpl`. +* Annotate your class with the Spring `@Service` and `@Transactional` annotations. +* Do **not** define your service class as public and use an interface instead of a class for injection (with `@Autowired`). + This follows the best practice principles from Joshua Bloch 'Effective Java' book called Programming to Interface. +* _Optional_ - define any methods you need to work with your `MyEntity` class. These methods should mostly be based on + common API form `javax.persistence.EntityManager`, or custom queries (see example below). * !!! warning "Avoid query parameters construction through string concatenation!" Please avoid using query parameter construction through string concatenation! This usually leads to [SQL Injection](https://en.wikipedia.org/wiki/SQL_injection) issues! Bad query example: `String sQuery = "select * from MyEntity where proprety='" + propertyValue + "'"`; - What you should do instead is to create a service which does properly assigns the parameters. + What you should do instead is to create a service which properly assigns the parameters. Here's an example service: ```java @Transactional From 87f03ee7ddca187de9a00e9ea0d8364111ae7325 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 17 Jun 2019 15:48:45 -0600 Subject: [PATCH 26/34] Update how-to-implement-spring-controllers.md --- .../how-to-implement-spring-controllers.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/developer-guide/how-to-implement-spring-controllers.md b/docs/developer-guide/how-to-implement-spring-controllers.md index 0c4b6a6a..9165bcac 100644 --- a/docs/developer-guide/how-to-implement-spring-controllers.md +++ b/docs/developer-guide/how-to-implement-spring-controllers.md @@ -3,9 +3,9 @@ ## Preface This guideline aims to outline some of the basic expectations that must be met before you can commit your code. The scope -of this guide are controllers which will be used by the front-end. Controllers which are specific to handling traffic -such as downloading/uploading/processing artifacts are out of this scope and need to be discussed before proceeding. -In case you have doubts, conflicts or any questions/ideas, please don't hesitate to message us on gitter! +of this guide are controllers which will be used by the front-end. Controllers, which are specific to handling traffic +such as downloading/uploading/processing artifacts, are out of this scope and need to be discussed before proceeding. +In case you have doubts, conflicts, or any questions/ideas, please don't hesitate to message us on gitter! The key words "**MUST**", "**MUST NOT**", "**REQUIRED**", "**SHALL**", "**SHALL NOT**", "**SHOULD**", "**SHOULD NOT**", "**RECOMMENDED**", "**MAY**", and "**OPTIONAL**" in this document are to be interpreted as described in [RFC 2119](https://tools.ietf.org/html/rfc2119). @@ -21,7 +21,7 @@ or a proper sub-directory in that path.
-[2.](#general-rule-2) You **MUST** have test cases which cover as much as possible your controller. +[2.](#general-rule-2) You **MUST** have test cases which cover your controller as much as possible.
@@ -30,11 +30,11 @@ or a proper sub-directory in that path.
[4.](#general-rule-4) If your controller/method is going to be processing data submitted by a client, you **MUST** use -Spring Form Validation and follow the [Spring Form Validation Rules](#form-validation) which also shows an example. +Spring Form Validation and follow the [Spring Form Validation Rules](#form-validation), which also shows an example.
-[5.](#general-rule-5) You **MUST** respond with an appropriate status code and `successful` or `failed` message +[5.](#general-rule-5) You **MUST** respond with an appropriate status code and a `successful` or `failed` message when an action has been completed (i.e. user created/updated/deleted). `BaseController` has already implemented methods for these cases. - Status code for **successful** operations **MUST** be `200 OK` From 4eca79246e7a9fcbd286603ea5ab6698f422481f Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 17 Jun 2019 15:55:45 -0600 Subject: [PATCH 27/34] Update using-the-event-api.md for EventListener link, the link showed 404 because there is no file in that directory named EventListener. I was unsure which specific EventListener was intended so I linked it to the event directory. As such, I cannot find the code snippet that is displayer referencing the method in EventListener. --- docs/developer-guide/using-the-event-api.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/developer-guide/using-the-event-api.md b/docs/developer-guide/using-the-event-api.md index 4feafa3f..64b0631e 100644 --- a/docs/developer-guide/using-the-event-api.md +++ b/docs/developer-guide/using-the-event-api.md @@ -71,5 +71,5 @@ public class ArtifactEventHandlingExample [strongbox-event-api]: https://github.com/strongbox/strongbox/blob/master/strongbox-event-api/ [org.carlspring.strongbox.event.Event]: https://github.com/strongbox/strongbox/blob/master/strongbox-event-api/src/main/java/org/carlspring/strongbox/event/Event.java -[org.carlspring.strongbox.event.EventListener]: https://github.com/strongbox/strongbox/blob/master/strongbox-event-api/src/main/java/org/carlspring/strongbox/event/EventListener.java +[org.carlspring.strongbox.event.EventListener]: https://github.com/strongbox/strongbox/tree/master/strongbox-event-api/src/main/java/org/carlspring/strongbox/event [org.carlspring.strongbox.event.AbstractEventListenerRegistry]: https://github.com/strongbox/strongbox/blob/master/strongbox-event-api/src/main/java/org/carlspring/strongbox/event/AbstractEventListenerRegistry.java From 5a2e2df824ae31598569d884741bba08eebc4f1b Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 24 Jun 2019 07:55:52 -0600 Subject: [PATCH 28/34] Link correction --- docs/user-guide/directory-structure.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/user-guide/directory-structure.md b/docs/user-guide/directory-structure.md index e07b52ac..6b47e65b 100644 --- a/docs/user-guide/directory-structure.md +++ b/docs/user-guide/directory-structure.md @@ -31,7 +31,7 @@ section to see which property to override to change the default location. * `strongbox-vault/` * `cache/` * `db/` - * [storages](../../knowledge-base/storages.html)/ + * [storages](../knowledge-base/storages.md)/ * `${storageId}/` * `${repositoryId}/` * [.index/](../developer-guide/maven-indexer.md#where-are-the-maven-indexes-located) From 988ebc9b32753c9fa2121119ff20c4f4c0c53e22 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Mon, 24 Jun 2019 12:34:10 -0600 Subject: [PATCH 29/34] Update how-to-implement-your-own-repository-format.md --- .../how-to-implement-your-own-repository-format.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/developer-guide/layout-providers/how-to-implement-your-own-repository-format.md b/docs/developer-guide/layout-providers/how-to-implement-your-own-repository-format.md index 4746c41a..a7ab125d 100644 --- a/docs/developer-guide/layout-providers/how-to-implement-your-own-repository-format.md +++ b/docs/developer-guide/layout-providers/how-to-implement-your-own-repository-format.md @@ -43,7 +43,7 @@ This is how it looks like: ![Strongbox Repository, Layout and Storage Provider Classes][classes] -You will need to implement following entities: +You will need to implement the following entities: - `ConcreteLayoutFileSystemProvider` - `ConcreteLayoutFileSystem` @@ -86,7 +86,7 @@ Below is the set of base classes which need to be extended: - `LayoutFileSystemProvider` - `AbstractLayoutProvider` -Almost all components in Strongbox are managed by Spring's IoC container, the same goes for the for layout-related +Almost all components in Strongbox are managed by Spring's IoC container, the same goes for the layout-related components and there should be the following factories to put everything into context: - `LayoutFileSystemProviderFactory` @@ -94,7 +94,7 @@ components and there should be the following factories to put everything into co ### Putting It All Together -Strongbox has plugable layout providers, so once you have impelemted all the extension points, it should work out of the box. +Strongbox has plugable layout providers, so once you have implemented all the extension points, it should work out of the box. Below you can see how the general flow goes, based on the artifact download example: @@ -115,7 +115,7 @@ Below you can see how the general flow goes, based on the artifact download exam [Artifact Coordinates]: ../../knowledge-base/artifact-coordinates.md [Artifact Coordinate Validators]: ../../knowledge-base/artifact-coordinate-validators/artifact-coordinate-validators.md -[ArtifactCoordinates.java]: https://github.com/strongbox/strongbox/blob/master/strongbox-commons/src/main/java/org/carlspring/strongbox/artifact/coordinates/ArtifactCoordinates.java +[ArtifactCoordinates.java]: https://github.com/strongbox/strongbox/blob/895112251c143ebc711924c582bc022c51656d26/strongbox-storage/strongbox-storage-api/src/main/java/org/carlspring/strongbox/artifact/coordinates/ArtifactCoordinates.java [BaseArtifactController.java]: https://github.com/strongbox/strongbox/blob/master/strongbox-web-core/src/main/java/org/carlspring/strongbox/controllers/BaseArtifactController.java [Layout Providers]: ../../knowledge-base/layout-providers.md [Maven 2 Layout Provider]: ./maven-2-layout-provider.md From 4b6d64b791e3a25b1a807c827437736c674c6042 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 27 Jun 2019 11:49:09 -0600 Subject: [PATCH 30/34] Update layout provider pages --- .../layout-providers/maven-2-layout-provider.md | 4 ++-- .../layout-providers/npm-layout-provider.md | 4 ++-- .../layout-providers/nuget-layout-provider.md | 4 ++-- .../layout-providers/raw-layout-provider.md | 8 ++++---- 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/docs/developer-guide/layout-providers/maven-2-layout-provider.md b/docs/developer-guide/layout-providers/maven-2-layout-provider.md index fafd191b..0dce82e6 100644 --- a/docs/developer-guide/layout-providers/maven-2-layout-provider.md +++ b/docs/developer-guide/layout-providers/maven-2-layout-provider.md @@ -49,7 +49,7 @@ Please, be aware that the Maven 2 layout provider (unlike most of the other layo ## Classes of Interest -The following are some of the most important classes you will need to be familiar with in order to work on this layout provider: +The following are some of the more important classes you will need to be familiar with in order to work on this layout provider: | Coordinate | Description | |:-------------|:------------| @@ -79,7 +79,7 @@ The following are some of the most important classes you will need to be familia [ArtifactIndexesServiceImpl]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-maven-layout/strongbox-storage-maven-layout-provider/src/main/java/org/carlspring/strongbox/services/impl/ArtifactIndexesServiceImpl.java [MavenIndexerSearchProvider]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-maven-layout/strongbox-storage-maven-layout-provider/src/main/java/org/carlspring/strongbox/providers/search/MavenIndexerSearchProvider.java [ArtifactMetadataServiceImpl]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-maven-layout/strongbox-storage-maven-layout-provider/src/main/java/org/carlspring/strongbox/services/impl/ArtifactMetadataServiceImpl.java -[MavenArtifactController]: https://github.com/strongbox/strongbox/blob/master/strongbox-web-core/src/main/java/org/carlspring/strongbox/controllers/maven/MavenArtifactController.java +[MavenArtifactController]: https://github.com/strongbox/strongbox/blob/e8beb1f7b97483355f55045c8947decdc1b1c26b/strongbox-web-core/src/main/java/org/carlspring/strongbox/controllers/layout/maven/MavenArtifactController.java [Maven Metadata]: ../metadata/maven-metadata.md [Maven Indexer]: ../maven-indexer.md [search provider]: ../search-providers.md diff --git a/docs/developer-guide/layout-providers/npm-layout-provider.md b/docs/developer-guide/layout-providers/npm-layout-provider.md index c0a28fba..cd243fed 100644 --- a/docs/developer-guide/layout-providers/npm-layout-provider.md +++ b/docs/developer-guide/layout-providers/npm-layout-provider.md @@ -29,7 +29,7 @@ Following [CLI commands](https://docs.npmjs.com/cli/npm) supported: ### Classes of Interest -The following are some of the most important classes you will need to be familiar with in order to work on this layout provider: +The following are some of the more important classes you will need to be familiar with in order to work on this layout provider: | Coordinate | Description | |:-------------|:------------| @@ -49,5 +49,5 @@ The following are some of the most important classes you will need to be familia [NpmLayoutProvider]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-npm-layout-provider/src/main/java/org/carlspring/strongbox/providers/layout/NpmLayoutProvider.java [NpmRepositoryFeatures]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-npm-layout-provider/src/main/java/org/carlspring/strongbox/repository/NpmRepositoryFeatures.java [NpmRepositoryManagementStrategy]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-npm-layout-provider/src/main/java/org/carlspring/strongbox/repository/NpmRepositoryManagementStrategy.java -[NpmArtifactController]: https://github.com/strongbox/strongbox/blob/master/strongbox-web-core/src/main/java/org/carlspring/strongbox/controllers/npm/NpmArtifactController.java +[NpmArtifactController]: https://github.com/strongbox/strongbox/blob/e8beb1f7b97483355f55045c8947decdc1b1c26b/strongbox-web-core/src/main/java/org/carlspring/strongbox/controllers/layout/npm/NpmArtifactController.java [NPM Metadata]: ../metadata/npm-metadata.md diff --git a/docs/developer-guide/layout-providers/nuget-layout-provider.md b/docs/developer-guide/layout-providers/nuget-layout-provider.md index 703bc31c..6c17836d 100644 --- a/docs/developer-guide/layout-providers/nuget-layout-provider.md +++ b/docs/developer-guide/layout-providers/nuget-layout-provider.md @@ -27,7 +27,7 @@ This layout provider has feeds. ## NuGet 2 Search Provider -The NuGet layout provider supports uses the [OrientDB (default)](../search-providers#orientdbsearchprovider). +The NuGet layout provider supports the use of the [OrientDB (default)](../search-providers#orientdbsearchprovider). # Supported Commands @@ -40,7 +40,7 @@ Following [CLI commands](https://docs.microsoft.com/ru-ru/nuget/tools/nuget-exe- ## Classes of Interest -The following are some of the most important classes you will need to be familiar with in order to work on this layout provider: +The following are some of the more important classes you will need to be familiar with in order to work on this layout provider: | Class | Description | |:-----------|:------------| diff --git a/docs/developer-guide/layout-providers/raw-layout-provider.md b/docs/developer-guide/layout-providers/raw-layout-provider.md index 9ff5c082..d7f846e7 100644 --- a/docs/developer-guide/layout-providers/raw-layout-provider.md +++ b/docs/developer-guide/layout-providers/raw-layout-provider.md @@ -7,7 +7,7 @@ The Raw layout provider allows storing artifacts that have no particular strict The code for the Raw layout provider is located under the [strongbox-storage-raw-layout-provider] module. !!! warning - This feature is currently highly experimental, under active development and it's implementation may change without + This feature is currently highly experimental, under active development, and it's implementation may change without warning. If you would like to try it out and find issues, please report them on the issue tracker. ## Artifact Coordinates @@ -24,15 +24,15 @@ The accepted `User-Agent` headers supported must look like `User-Agent=Raw/*`. ## Classes of Interest -The following are some of the most important classes you will need to be familiar with in order to work on this layout provider: +The following are some of the more important classes you will need to be familiar with in order to work on this layout provider: | Coordinate | Description | |:-------------|:------------| -| [NullArtifactCoordinates](https://github.com/strongbox/strongbox/blob/master/strongbox-commons/src/main/java/org/carlspring/strongbox/artifact/coordinates/NullArtifactCoordinates.java) | This is an implementation of `ArtifactCoordinates` for the Raw layout. Basically, there are no coordinates. | +| [NullArtifactCoordinates](https://github.com/strongbox/strongbox/blob/6818edbee32374d33b11d76a439fe5e2262c160f/strongbox-storage/strongbox-storage-api/src/main/java/org/carlspring/strongbox/artifact/coordinates/NullArtifactCoordinates.java) | This is an implementation of `ArtifactCoordinates` for the Raw layout. Basically, there are no coordinates. | | [RawLayoutProvider](https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-raw-layout-provider/src/main/java/org/carlspring/strongbox/providers/layout/RawLayoutProvider.java) | This is the actual implementation of the Raw layout provider. | | [RawRepositoryFeatures](https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-raw-layout-provider/src/main/java/org/carlspring/strongbox/repository/RawRepositoryFeatures.java) | This defines the custom layout provider features for the Raw layout provider. | | [RawRepositoryManagementStrategy](https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-raw-layout-provider/src/main/java/org/carlspring/strongbox/repository/RawRepositoryManagementStrategy.java) | This class is used to handle the initialization of Raw repositories. | -| [RawArtifactController](https://github.com/strongbox/strongbox/blob/master/strongbox-web-core/src/main/java/org/carlspring/strongbox/controllers/raw/RawArtifactController.java) | This is the Raw-specific implementation of the `BaseArtifactController`. | +| [RawArtifactController](https://github.com/strongbox/strongbox/blob/e8beb1f7b97483355f55045c8947decdc1b1c26b/strongbox-web-core/src/main/java/org/carlspring/strongbox/controllers/layout/raw/RawArtifactController.java) | This is the Raw-specific implementation of the `BaseArtifactController`. | # See Also * [Writing a layout provider] From da43b5d83bafeeb2dd531716d1ddef1455eb1487 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 27 Jun 2019 13:05:04 -0600 Subject: [PATCH 31/34] Update maven-metadata.md --- docs/developer-guide/metadata/maven-metadata.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/developer-guide/metadata/maven-metadata.md b/docs/developer-guide/metadata/maven-metadata.md index 1ee430d2..33c814b4 100644 --- a/docs/developer-guide/metadata/maven-metadata.md +++ b/docs/developer-guide/metadata/maven-metadata.md @@ -3,7 +3,7 @@ ## What is stored in the Maven metadata? The `maven-metadata.xml` file is a place where Maven stores basic information about artifacts. -It can contain useful data such as, for example: +It can contain useful data such as: - Which timestamped artifact file represents the current `SNAPSHOT` artifact - What the latest deployed version of an artifact is @@ -144,7 +144,7 @@ The `` field is used to point to the most-recently deployed (release, o that this is not always necessarily the highest available version. For example, if you have several active branches under version control from which you're deploying versions of the artifact (for example `1.2` and `2.0` branches from which you respectively release artifacts with versions `1.2.1`, `1.2.2`, etc. and `2.0.1`, `2.0.2`), you may have the -case where an artifact from the `1.2` branch been deployed while at the same time there is also a `2.0.3` version as well. +case where an artifact from the `1.2` branch has been deployed while at the same time there is also a `2.0.3` version. Depending on the repository type, the `` field may also be pointing to `SNAPSHOT` artifacts as well. ## What is the `release` field used for? @@ -168,7 +168,7 @@ When you deploy an artifact to a remote repository, Maven will check if there is necessary changes into a new copy and then overwrite the data on the remote. If there is no existing `maven-metadata.xml` in the remote repository, Maven will generate a new one and deploy it. -Sometimes the data in the repository can become corrupt and this is when the repository manager needs to be told +Sometimes, the data in the repository can become corrupt and this is when the repository manager needs to be told to rebuild it (or, alternatively, a scheduled task on the repository manager can take care of this to pre-emptively fix it). ## What are the official resources on Maven metadata? From 44f5fece6f0dcf89b74c14f16294deacadc4b039 Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 4 Jul 2019 09:36:59 -0600 Subject: [PATCH 32/34] Updated and corrected links --- docs/developer-guide/search-providers.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/developer-guide/search-providers.md b/docs/developer-guide/search-providers.md index 73cf095b..5c4ffbf4 100644 --- a/docs/developer-guide/search-providers.md +++ b/docs/developer-guide/search-providers.md @@ -106,6 +106,6 @@ catch (SearchException e) [SearchProvider]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-api/src/main/java/org/carlspring/strongbox/providers/search/SearchProvider.java [SearchProviderRegistry]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-api/src/main/java/org/carlspring/strongbox/providers/search/SearchProviderRegistry.java [OrientDbSearchProvider]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-api/src/main/java/org/carlspring/strongbox/providers/search/OrientDbSearchProvider.java -[MavenIndexerSearchProvider]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-maven-layout-provider/src/main/java/org/carlspring/strongbox/providers/search/MavenIndexerSearchProvider.java +[MavenIndexerSearchProvider]: https://github.com/strongbox/strongbox/blob/master/strongbox-storage/strongbox-storage-layout-providers/strongbox-storage-maven-layout/strongbox-storage-maven-layout-provider/src/main/java/org/carlspring/strongbox/providers/search/MavenIndexerSearchProvider.java [REST-API]: ../user-guide/rest-api.md [Maven Indexer]: ./maven-indexer.md From 8d01ded6d728c7378d8c43e920c1be3c513a92ca Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 4 Jul 2019 09:37:03 -0600 Subject: [PATCH 33/34] Update logging.md The logging.md file that I have in my system is the one that I corrected. I noticed just before sending this that the file name that is in the repo was add-logging.md. Please let me know if the changes to this file look good. If they do, I can update the add-logging.md file seperately in a different commit. --- docs/developer-guide/logging.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/developer-guide/logging.md b/docs/developer-guide/logging.md index efbd2604..343dbe06 100644 --- a/docs/developer-guide/logging.md +++ b/docs/developer-guide/logging.md @@ -10,7 +10,7 @@ The logging in the application is set up using: ### Configuration -If you have `strongbox-commons` as a (direct, or transitive) dependency of your module, you will be able to use the logging, without having to specify the dependencies yourself. If, for one reason, or another, you do not want to have this dependency, you will need the following dependencies instead: +If you have `strongbox-commons` as a (direct or transitive) dependency of your module, you will be able to use the logging, without having to specify the dependencies yourself. If, for one reason or another, you do not want to have this dependency, you will need the following dependencies instead: ```xml @@ -56,7 +56,7 @@ In order to exclude them as transitive dependencies, you will need to have somet ## Logging Configuration File Location -The logging is controlled via the [strongbox/strongbox-resources/strongbox-common-resources/src/main/resources/logback.xml]. +The logging is controlled via the [strongbox/strongbox-resources/strongbox-common-resources/src/main/resources/logbac-spring.xml]. This resource should be copied wherever necessary using: ```xml @@ -94,9 +94,9 @@ This resource should be copied wherever necessary using: The logging can be configured via the REST API. We have created a separate project called [logback-configuration] for this purpose. -For details on how to configure the logging and resolve the log files via the REST API, please visit the rest documentation +For details on how to configure the logging and resolve the log files via the REST API, please visit the REST documentation in your Strongbox instance at `http://localhost:48080/docs/rest/api.html`. [logback-configuration]: https://github.com/carlspring/logback-configuration -[strongbox/strongbox-resources/strongbox-common-resources/src/main/resources/logback.xml]: https://github.com/strongbox/strongbox/blob/master/strongbox-resources/strongbox-common-resources/src/main/resources/logback.xml +[strongbox/strongbox-resources/strongbox-common-resources/src/main/resources/logback.xml]: https://github.com/strongbox/strongbox/blob/master/strongbox-resources/strongbox-common-resources/src/main/resources/logback-spring.xml From 128d37e47e19c20238b20a76f238bb90e9de7fcb Mon Sep 17 00:00:00 2001 From: Michael Zwiener Date: Thu, 4 Jul 2019 11:51:08 -0600 Subject: [PATCH 34/34] Update maven-indexer.md lines 86-89 are not formated properly. In the code, it is formated to have a new line for each of the points but in the wiki it does not express that new line and instead just runs them all together. I do not know enough about markup to adjust this. If anyone knows how, please let me know and I will correct it in a new commit. Thank you. --- docs/developer-guide/maven-indexer.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/developer-guide/maven-indexer.md b/docs/developer-guide/maven-indexer.md index c97cd116..581cd452 100644 --- a/docs/developer-guide/maven-indexer.md +++ b/docs/developer-guide/maven-indexer.md @@ -57,7 +57,7 @@ The Maven Indexer is used for integration with IDE-s. The Maven indexes produced by most public repository managers (such as Maven Central), are usually rebuilt once a week, as it can take quite a while to scan large repositories with countless small artifacts. Hence, these indexes have proven - to not be quite as up-to-date, as the real server's contents. For this reason, we are using OrientDB to keep more + to not be quite as up-to-date as the real server's contents. For this reason, we are using OrientDB to keep more accurate information. There are two types of Maven Indexer indexes: