Ryan Baxter
26d24a0281
Merge branch '3.1.x' into 4.0.x
2023-06-27 19:40:33 -04:00
spencergibb
5c259443e1
Specifies vault version in testcontainers
2023-06-27 16:24:34 -04:00
Henning Pöttker
d6e84660fa
Let config client fail before bean creation ( #1977 )
...
If the config client fails and fail fast is enabled, the ConfigClientFailFastException will already be thrown when the bootstrap context is closed instead of during auto-configuration.
2023-02-10 09:12:23 -05:00
Krishna
b66f23b03b
gh-2217 converted all Junit 4 test cases to Junit 5 ( #2218 )
...
* gh-2217 converted all Junit 4 test cases to Junit 5
* Added the junit platform launcher in the test scope to fix unit test case issues
* added the Junit platform launcher in test scope.
2023-02-01 10:14:08 -05:00
Ryan Baxter
a0edae283d
Replace TestSocketUtils with version from Spring Framework
2022-11-28 20:15:27 -05:00
Ryan Baxter
1c6b17655f
Fixing breakages with Boot snapshots
2022-09-08 13:06:49 -04:00
Olga Maciaszek-Sharma
2d2d5aaae1
Fix @LocalServerPort imports.
2022-05-18 13:56:54 +02:00
buildmaster
27acb917ce
Bumping versions
2022-05-11 02:50:42 +00:00
spencergibb
ed2f2cc20a
log retry context
2022-05-09 13:39:26 -04:00
spencergibb
a613db4e06
Merge branch '3.1.x'
2022-05-09 12:24:29 -04:00
spencergibb
3046620ec1
Uses TestConfigServerApplication
2022-05-04 18:40:23 -04:00
spencergibb
463b97200a
Uses TestConfigServerApplication
2022-05-04 18:17:27 -04:00
spencergibb
425ba7785c
Merge branch '3.1.x'
2022-05-04 18:15:05 -04:00
spencergibb
c1bff9c27b
Adds TestConfigServerApplication for use in tests.
...
This avoids a classpath scanning issue which popped up with boot 2.7+
2022-05-04 18:11:34 -04:00
spencergibb
55ef4c8bd5
Migrates to TestSocketUtils from spring-cloud-test-support
2022-03-09 12:27:13 -05:00
Ryan Baxter
470375c246
Merge remote-tracking branch 'origin/3.1.x' into main
2022-01-31 14:51:50 -05:00
Mark Bonnekessel
b5ac671671
Add Option.PROFILE_SPECIFIC to profile specific PropertySources from Vault
...
Fixes gh-1997
2022-01-31 12:04:37 -05:00
spencergibb
fda8368355
Updates to 4.0.0-SNAPSHOT
...
Updates for java 17, framework 6, boot 3 and javax->jakarta
2022-01-04 11:38:09 -05:00
Jonathan Schneider
961eb345d4
refactor: remove @RequestMapping annotations ( #1927 )
...
Co-authored-by: Moderne <team@moderne.io >
Co-authored-by: Moderne <team@moderne.io >
2021-07-10 17:52:07 -04:00
spencergibb
e9fa34032b
Adds support for retry in profile specific properties.
...
in application-<profile>.{properties|yaml}
spring.config.import=configserver:http://configserver.example.com?fail-fast=true&max-attempts=10&max-interval=1500&multiplier=1.2&initial-interval=1100 "
This required that the RetryTemplate be created as late as possible and it is no longer put in the bootstrap context. A RetryTemplateFactory was created so the LoaderInterceptor and the ConfigServerInstanceProvider can create a RetryTemplate. ConfigServerConfigDataLocationResolver creates RetryProperties from the url parameters if they are provided.
ConfigServerConfigDataLoader now creates a ConfigClientFailFastException and registers it in the application context rather and returns an empty ConfigData rather than throwing and exception. Then in ConfigClientAutoConfiguration an ApplicationStartedEvent is listened for and if the fail fast exception is there, throws it halting execution. This all allows logging in ConfigData to show.
Fixes gh-1797
2021-05-26 11:31:03 -04:00
spencergibb
3056d5f842
Fixes profile ordering of remote vs local.
...
Previously a local profiles specific file would have more priority than a remote profile specific file. Using a new ConfigData Option, this is now fixed.
Fixes gh-1795
2021-04-08 17:39:32 -04:00
spencergibb
2ddc7cb73b
Formatting
2021-03-29 17:08:39 -04:00
spencergibb
81585fe09e
Merge branch '2.2.x'
2021-03-29 17:02:35 -04:00
spencergibb
e7be2b8c5a
Register env repo properties as beans.
...
The `CompositeEnvironmentBeanFactoryPostProcessor` binds the required properties for a EnvironmentRepositoryFactory, but does not register it as a bean. This is now done with a supplier to the bound instance.
Fixes gh-1720
2021-03-29 16:25:41 -04:00
spencergibb
f840725c12
Support Retry in spring.config.import=configserver:
...
Fixes gh-1775
2020-12-22 17:40:32 -05:00
Spencer Gibb
499739f308
Uses BindHandler if registered in bootstrap. ( #1773 )
...
* Uses BindHandler if registered in bootstrap.
This allows spring-cloud-context to register a TextEncryptorBindHandler and handle `{cipher}` prefixed properties prior to sending for remote data.
* Adds test that a BindHandler in bootstrap context is used.
* Makes KeyProperties a bean that is conditional on missing.
2020-12-20 11:39:11 -05:00
spencergibb
2e80c9ca9d
Updates ConfigData to use spring.cloud.config.media-type.
...
See gh-1715
2020-10-09 21:34:35 -04:00
spencergibb
dae4cafb96
Updates to use Bootstrapper to customize ConfigData.
...
Removes AbstractConfigData* classes.
Creates ConfigServerBootstrapper.java to allow simplified bootstrapping for users.
2020-09-17 18:08:42 -04:00
spencergibb
baa1bd4282
Formatting
2020-09-17 11:05:13 -04:00
Spencer Gibb
854060b019
Support for new ConfigDataLoader infrastructure. ( #1656 )
...
This allows for `spring.config.import=configserver:`
Supports the fact that bootstrap is now opt in. In config client, by default, `ConfigServerConfigData*` will be used instead of `ConfigServicePropertySourceLocator`.
2020-08-06 15:55:07 -04:00
Ryan Baxter
3f81c62a4c
Merge remote-tracking branch 'origin/2.1.x'
2019-06-03 12:31:27 -04:00
Spring Operator
c6b902cb47
URL Cleanup
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
These URLs were unable to be fixed. Please review them to see if they can be manually resolved.
* [ ] http://myconfigserver.com (200) with 2 occurrences could not be migrated:
([https](https://myconfigserver.com ) result ConnectTimeoutException).
These URLs were fixed, but the https status was not OK. However, the https status was the same as the http request or http redirected to an https URL, so they were migrated. Your review is recommended.
* [ ] http://doc.gitlab.com/ee/web_hooks/web_hooks.html (302) with 2 occurrences migrated to:
https://docs.gitlab.com/ee/web_hooks/web_hooks.html ([https](https://doc.gitlab.com/ee/web_hooks/web_hooks.html ) result SSLHandshakeException).
* [ ] http://:foobar:@localhost:9999 (UnknownHostException) with 1 occurrences migrated to:
https://:foobar:@localhost:9999 ([https](https://:foobar:@localhost:9999 ) result UnknownHostException).
* [ ] http://:foobar@localhost:9999 (UnknownHostException) with 1 occurrences migrated to:
https://:foobar@localhost:9999 ([https](https://:foobar@localhost:9999 ) result UnknownHostException).
* [ ] http://authenticated.http.proxy (UnknownHostException) with 2 occurrences migrated to:
https://authenticated.http.proxy ([https](https://authenticated.http.proxy ) result UnknownHostException).
* [ ] http://authenticated.https.proxy (UnknownHostException) with 2 occurrences migrated to:
https://authenticated.https.proxy ([https](https://authenticated.https.proxy ) result UnknownHostException).
* [ ] http://compose.docker.io/ (UnknownHostException) with 1 occurrences migrated to:
https://compose.docker.io/ ([https](https://compose.docker.io/ ) result UnknownHostException).
* [ ] http://example/git (UnknownHostException) with 10 occurrences migrated to:
https://example/git ([https](https://example/git ) result UnknownHostException).
* [ ] http://foo:8877/ (UnknownHostException) with 2 occurrences migrated to:
https://foo:8877/ ([https](https://foo:8877/ ) result UnknownHostException).
* [ ] http://foo:8877/bar (UnknownHostException) with 1 occurrences migrated to:
https://foo:8877/bar ([https](https://foo:8877/bar ) result UnknownHostException).
* [ ] http://foo:bar@localhost:9999 (UnknownHostException) with 2 occurrences migrated to:
https://foo:bar@localhost:9999 ([https](https://foo:bar@localhost:9999 ) result UnknownHostException).
* [ ] http://foobar:@localhost:9999 (UnknownHostException) with 1 occurrences migrated to:
https://foobar:@localhost:9999 ([https](https://foobar:@localhost:9999 ) result UnknownHostException).
* [ ] http://foobar@localhost:9999 (UnknownHostException) with 1 occurrences migrated to:
https://foobar@localhost:9999 ([https](https://foobar@localhost:9999 ) result UnknownHostException).
* [ ] http://git/team-a/config-repo.git (UnknownHostException) with 4 occurrences migrated to:
https://git/team-a/config-repo.git ([https](https://git/team-a/config-repo.git ) result UnknownHostException).
* [ ] http://git/team-b/config-repo.git (UnknownHostException) with 2 occurrences migrated to:
https://git/team-b/config-repo.git ([https](https://git/team-b/config-repo.git ) result UnknownHostException).
* [ ] http://gitea.lawyers.corp/avatars/5868737ae078a4441031bf550d16e967 (UnknownHostException) with 2 occurrences migrated to:
https://gitea.lawyers.corp/avatars/5868737ae078a4441031bf550d16e967 ([https](https://gitea.lawyers.corp/avatars/5868737ae078a4441031bf550d16e967 ) result UnknownHostException).
* [ ] http://gitea.lawyers.corp/avatars/dbc87f99ecd29cb0eb4447807ad73f9f (UnknownHostException) with 1 occurrences migrated to:
https://gitea.lawyers.corp/avatars/dbc87f99ecd29cb0eb4447807ad73f9f ([https](https://gitea.lawyers.corp/avatars/dbc87f99ecd29cb0eb4447807ad73f9f ) result UnknownHostException).
* [ ] http://gitea.lawyers.corp/internal/lawsuits (UnknownHostException) with 1 occurrences migrated to:
https://gitea.lawyers.corp/internal/lawsuits ([https](https://gitea.lawyers.corp/internal/lawsuits ) result UnknownHostException).
* [ ] http://gitea.lawyers.corp/internal/lawsuits.git (UnknownHostException) with 1 occurrences migrated to:
https://gitea.lawyers.corp/internal/lawsuits.git ([https](https://gitea.lawyers.corp/internal/lawsuits.git ) result UnknownHostException).
* [ ] 78b77379c4 (UnknownHostException) with 1 occurrences migrated to:
78b77379c4 ([https](78b77379c4 ) result UnknownHostException).
* [ ] 70767b558d...78b77379c4 (UnknownHostException) with 1 occurrences migrated to:
70767b558d...78b77379c4 ([https](70767b558d...78b77379c4 ) result UnknownHostException).
* [ ] http://http.proxy (UnknownHostException) with 2 occurrences migrated to:
https://http.proxy ([https](https://http.proxy ) result UnknownHostException).
* [ ] http://https.proxy (UnknownHostException) with 2 occurrences migrated to:
https://https.proxy ([https](https://https.proxy ) result UnknownHostException).
* [ ] http://server-host-doesnt-exist:1234 (UnknownHostException) with 1 occurrences migrated to:
https://server-host-doesnt-exist:1234 ([https](https://server-host-doesnt-exist:1234 ) result UnknownHostException).
* [ ] http://somegitserver/somegitrepo (UnknownHostException) with 6 occurrences migrated to:
https://somegitserver/somegitrepo ([https](https://somegitserver/somegitrepo ) result UnknownHostException).
* [ ] http://somehost (UnknownHostException) with 8 occurrences migrated to:
https://somehost ([https](https://somehost ) result UnknownHostException).
* [ ] http://user:password@localhost:8888 (UnknownHostException) with 1 occurrences migrated to:
https://user:password@localhost:8888 ([https](https://user:password@localhost:8888 ) result UnknownHostException).
* [ ] http://www.puppycrawl.com/dtds/suppressions_1_1.dtd (404) with 1 occurrences migrated to:
https://www.puppycrawl.com/dtds/suppressions_1_1.dtd ([https](https://www.puppycrawl.com/dtds/suppressions_1_1.dtd ) result 404).
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://EditorConfig.org with 1 occurrences migrated to:
https://EditorConfig.org ([https](https://EditorConfig.org ) result 200).
* [ ] http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html with 1 occurrences migrated to:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html ([https](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/iam-roles-for-amazon-ec2.html ) result 200).
* [ ] http://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html with 1 occurrences migrated to:
https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html ([https](https://docs.aws.amazon.com/codecommit/latest/userguide/welcome.html ) result 200).
* [ ] http://docs.aws.amazon.com/general/latest/gr/signature-version-4.html with 2 occurrences migrated to:
https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html ([https](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html ) result 200).
* [ ] http://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html with 1 occurrences migrated to:
https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html ([https](https://docs.aws.amazon.com/sdk-for-java/v1/developer-guide/credentials.html ) result 200).
* [ ] http://example.com/mike/diaspora with 3 occurrences migrated to:
https://example.com/mike/diaspora ([https](https://example.com/mike/diaspora ) result 200).
* [ ] http://example.com/mike/diaspora.git with 3 occurrences migrated to:
https://example.com/mike/diaspora.git ([https](https://example.com/mike/diaspora.git ) result 200).
* [ ] b6568db1bc with 1 occurrences migrated to:
b6568db1bc ([https](b6568db1bc ) result 200).
* [ ] da1560886d with 1 occurrences migrated to:
da1560886d ([https](da1560886d ) result 200).
* [ ] http://example.com/svn/ with 1 occurrences migrated to:
https://example.com/svn/ ([https](https://example.com/svn/ ) result 200).
* [ ] http://git.mydoc.io/?t=154711 with 1 occurrences migrated to:
https://git.mydoc.io/?t=154711 ([https](https://git.mydoc.io/?t=154711 ) result 200).
* [ ] http://serverfault.com/questions/377348/when-does-tmp-get-cleared/377349 with 1 occurrences migrated to:
https://serverfault.com/questions/377348/when-does-tmp-get-cleared/377349 ([https](https://serverfault.com/questions/377348/when-does-tmp-get-cleared/377349 ) result 200).
* [ ] http://subversion.apache.org/ with 2 occurrences migrated to:
https://subversion.apache.org/ ([https](https://subversion.apache.org/ ) result 200).
* [ ] http://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/ with 5 occurrences migrated to:
https://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/ ([https](https://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/ ) result 200).
* [ ] http://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/ with 5 occurrences migrated to:
https://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/ ([https](https://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/ ) result 200).
* [ ] http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html with 2 occurrences migrated to:
https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html ([https](https://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html with 2 occurrences migrated to:
https://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html ([https](https://www.oracle.com/technetwork/java/javase/downloads/jce-6-download-429243.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html with 2 occurrences migrated to:
https://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html ([https](https://www.oracle.com/technetwork/java/javase/downloads/jce-7-download-432124.html ) result 200).
* [ ] http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html with 2 occurrences migrated to:
https://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html ([https](https://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html ) result 200).
* [ ] http://git.oschina.net/oschina/webhook with 1 occurrences migrated to:
https://git.oschina.net/oschina/webhook ([https](https://git.oschina.net/oschina/webhook ) result 301).
* [ ] http://plugins.jetbrains.com/plugin/6546 with 2 occurrences migrated to:
https://plugins.jetbrains.com/plugin/6546 ([https](https://plugins.jetbrains.com/plugin/6546 ) result 301).
* [ ] http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSGettingStartedGuide/AWSCredentials.html with 1 occurrences migrated to:
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSGettingStartedGuide/AWSCredentials.html ([https](https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSGettingStartedGuide/AWSCredentials.html ) result 302).
* [ ] http://eclipse.org with 1 occurrences migrated to:
https://eclipse.org ([https](https://eclipse.org ) result 302).
* [ ] http://eclipse.org/m2e/ with 2 occurrences migrated to:
https://eclipse.org/m2e/ ([https](https://eclipse.org/m2e/ ) result 302).
* [ ] http://www.danga.com/memcached/ with 1 occurrences migrated to:
https://www.danga.com/memcached/ ([https](https://www.danga.com/memcached/ ) result 302).
* [ ] http://www.springsource.com/developer/sts with 1 occurrences migrated to:
https://www.springsource.com/developer/sts ([https](https://www.springsource.com/developer/sts ) result 302).
These URLs were intentionally ignored.
* http://127.0.0.1:%s/test/endpoint with 1 occurrences
* http://127.0.0.1:8200 with 1 occurrences
* http://127.0.0.1:8200/v1/foo/bar/secret/ with 2 occurrences
* http://127.0.0.1:8200/v1/secret/ with 9 occurrences
* http://127.0.0.1:8200/v1/secret/data/ with 2 occurrences
* http://localhost with 23 occurrences
* http://localhost/ with 5 occurrences
* http://localhost/path/ with 2 occurrences
* http://localhost/test.git with 3 occurrences
* http://localhost/test1.git with 1 occurrences
* http://localhost/test2.git with 1 occurrences
* http://localhost/value-test.git with 1 occurrences
* http://localhost1/test.git with 1 occurrences
* http://localhost1:8888/ with 1 occurrences
* http://localhost2/test.git with 1 occurrences
* http://localhost:8888 with 9 occurrences
* http://localhost:8888/myapp/default with 1 occurrences
* http://localhost:8889 with 3 occurrences
* http://localhost:9999 with 9 occurrences
2019-03-27 13:06:48 -04:00
Spring Operator
e230e0ea0b
URL Cleanup ( #1309 )
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/ ) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 222 occurrences migrated to:
https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0 ) result 200).
2019-03-25 09:34:10 -04:00
Spring Operator
2759ed4ba1
URL Cleanup ( #1307 )
...
This commit updates URLs to prefer the https protocol. Redirects are not followed to avoid accidentally expanding intentionally shortened URLs (i.e. if using a URL shortener).
# Fixed URLs
## Fixed Success
These URLs were switched to an https URL with a 2xx status. While the status was successful, your review is still recommended.
* [ ] http://www.apache.org/licenses/ with 1 occurrences migrated to:
https://www.apache.org/licenses/ ([https](https://www.apache.org/licenses/ ) result 200).
* [ ] http://www.apache.org/licenses/LICENSE-2.0 with 226 occurrences migrated to:
https://www.apache.org/licenses/LICENSE-2.0 ([https](https://www.apache.org/licenses/LICENSE-2.0 ) result 200).
2019-03-21 20:28:37 -04:00
Marcin Grzejszczak
b1546c59ca
Added checkstyle
2019-02-05 10:38:16 +01:00
Spencer Gibb
2b1248da48
Makes resolving of HttpServletRequest in vault env repo lazy.
...
fixes gh-975
2018-04-12 22:59:15 -04:00
Spencer Gibb
40880bf7bd
update to new web endpoint property
2018-02-12 12:15:32 -05:00
Spencer Gibb
a4717eee21
Make sure fail-fast property follows new boot 2.0 conventions
2018-01-18 11:19:37 -05:00
Spencer Gibb
a387be2e72
Updates for boot 2.0 compatibility
2017-11-27 13:37:56 -05:00
Spencer Gibb
861ed9207c
Updates for boot 2.0 compatibility
2017-11-22 11:41:54 -05:00
Spencer Gibb
e42bcda48d
Update tests for spring boot 2.0 compatibility
2017-09-27 14:04:22 -04:00
Spencer Gibb
fee1e87c5a
Update tests for spring boot 2.0 compatibility
2017-09-26 16:31:00 -04:00
Dave Syer
d4bc8503a5
Fix all tests with Spring Boot latest snapshots
2017-05-12 17:45:42 +01:00
Spencer Gibb
06393add99
Merge branch 'master' into 2.0.x
...
# Conflicts:
# docs/pom.xml
# pom.xml
# spring-cloud-config-client/pom.xml
# spring-cloud-config-dependencies/pom.xml
# spring-cloud-config-monitor/pom.xml
# spring-cloud-config-sample/pom.xml
# spring-cloud-config-server/pom.xml
# spring-cloud-starter-config/pom.xml
2017-04-28 15:58:33 -06:00
Spencer Gibb
62ef648b59
polish
2017-03-31 14:18:30 -06:00
Spencer Gibb
2bc2abcfae
fix compile error for boot 2.0
2017-03-17 20:14:04 -06:00
Spencer Gibb
171d2b261b
Update to s-c-build 1.3.0 and bump version to 1.3.0
2016-12-12 09:26:34 -07:00
Spencer Gibb
465bc94953
Make config server configuration deterministic.
...
Move @Import from EnableConfigServer to ConfigServerAutoConfiguration that is only activated if Marker bean created by EnableConfigServer exists.
fixes gh-530
2016-10-25 14:44:34 -06:00
Spencer Gibb
753db0ed22
Implement VaultEnvironmentRepository.
...
This is an alternative to VCS or file based repository implementations.
All properties are stored ecrypted in vault, regardless of whether or
not that actaully need to be encrypted.
Supports properties style (this.is.a.property) or vault nested
properties.
Adds a watch to client and server, if enabled, the client will long poll
the server and wait for changes rather than relying on a message broker
to send change events.
Adds a server side watch for consul keys, this is useful when vault is
backed by consul (and currently the only use case, since there is not a
consul repository implementation).
Closes gh-397
2016-07-01 11:29:29 -06:00
Dave Syer
be4cc1b051
Update readme script to handle local includes
2016-06-11 09:54:41 +01:00