summaryrefslogtreecommitdiffstats
path: root/src/com/gitblit
diff options
context:
space:
mode:
authorJames Moger <james.moger@gitblit.com>2011-09-13 08:10:03 -0400
committerJames Moger <james.moger@gitblit.com>2011-09-13 08:10:03 -0400
commit2c32fd202bac23df456d6515f1c33443cc803f35 (patch)
treeea086aa3f1c3572062e9e6600781e673947a9f22 /src/com/gitblit
parentff3015527b89a29df0918b7f9ff76f4c983ca7d2 (diff)
downloadgitblit-2c32fd202bac23df456d6515f1c33443cc803f35.tar.gz
gitblit-2c32fd202bac23df456d6515f1c33443cc803f35.zip
Revised federation setting names. Improved documentation.
Diffstat (limited to 'src/com/gitblit')
-rw-r--r--src/com/gitblit/FederationPullExecutor.java2
-rw-r--r--src/com/gitblit/FederationServlet.java5
-rw-r--r--src/com/gitblit/GitBlit.java25
-rw-r--r--src/com/gitblit/models/FederationModel.java2
4 files changed, 20 insertions, 14 deletions
diff --git a/src/com/gitblit/FederationPullExecutor.java b/src/com/gitblit/FederationPullExecutor.java
index 127e1fc8..9a1c3cff 100644
--- a/src/com/gitblit/FederationPullExecutor.java
+++ b/src/com/gitblit/FederationPullExecutor.java
@@ -184,7 +184,7 @@ public class FederationPullExecutor implements Runnable {
if (result.createdRepository) {
// default local settings
repository.federationStrategy = FederationStrategy.EXCLUDE;
- repository.isFrozen = true;
+ repository.isFrozen = registration.freeze;
} else {
// preserve local settings
repository.isFrozen = rm.isFrozen;
diff --git a/src/com/gitblit/FederationServlet.java b/src/com/gitblit/FederationServlet.java
index b8b6408c..86aadb02 100644
--- a/src/com/gitblit/FederationServlet.java
+++ b/src/com/gitblit/FederationServlet.java
@@ -117,9 +117,10 @@ public class FederationServlet extends HttpServlet {
return;
}
- String uuid = GitBlit.getString(Keys.federation.uuid, "");
+ String uuid = GitBlit.getString(Keys.federation.passphrase, "");
if (StringUtils.isEmpty(uuid)) {
- logger.warn(Keys.federation.uuid + " is not properly set! Federation request denied.");
+ logger.warn(Keys.federation.passphrase
+ + " is not properly set! Federation request denied.");
response.sendError(HttpServletResponse.SC_FORBIDDEN);
return;
}
diff --git a/src/com/gitblit/GitBlit.java b/src/com/gitblit/GitBlit.java
index 7c499698..b32440bb 100644
--- a/src/com/gitblit/GitBlit.java
+++ b/src/com/gitblit/GitBlit.java
@@ -794,8 +794,8 @@ public class GitBlit implements ServletContextListener {
}
public static boolean canFederate() {
- String uuid = getString(Keys.federation.uuid, "");
- return !StringUtils.isEmpty(uuid);
+ String passphrase = getString(Keys.federation.passphrase, "");
+ return !StringUtils.isEmpty(passphrase);
}
/**
@@ -803,13 +803,13 @@ public class GitBlit implements ServletContextListener {
* instances.
*/
private void configureFederation() {
- boolean validUuid = true;
- String uuid = settings.getString(Keys.federation.uuid, "");
- if (StringUtils.isEmpty(uuid)) {
- logger.warn("Federation UUID is blank! This server can not be PULLED from.");
- validUuid = false;
+ boolean validPassphrase = true;
+ String passphrase = settings.getString(Keys.federation.passphrase, "");
+ if (StringUtils.isEmpty(passphrase)) {
+ logger.warn("Federation passphrase is blank! This server can not be PULLED from.");
+ validPassphrase = false;
}
- if (validUuid) {
+ if (validPassphrase) {
for (FederationToken tokenType : FederationToken.values()) {
logger.info(MessageFormat.format("Federation {0} token = {1}", tokenType.name(),
getFederationToken(tokenType)));
@@ -834,7 +834,7 @@ public class GitBlit implements ServletContextListener {
if (federationRegistrations.isEmpty()) {
List<String> keys = settings.getAllKeys(Keys.federation._ROOT);
keys.remove(Keys.federation.name);
- keys.remove(Keys.federation.uuid);
+ keys.remove(Keys.federation.passphrase);
keys.remove(Keys.federation.allowProposals);
keys.remove(Keys.federation.proposalsFolder);
keys.remove(Keys.federation.defaultFrequency);
@@ -860,6 +860,9 @@ public class GitBlit implements ServletContextListener {
} else if (setting.equals("folder")) {
// destination folder of the pull operation
federatedModels.get(server).folder = settings.getString(key, "");
+ } else if (setting.equals("freeze")) {
+ // set the repository to read-only after pull
+ federatedModels.get(server).freeze = settings.getBoolean(key, true);
} else if (setting.equals("mergeAccounts")) {
// merge remote accounts into local accounts
federatedModels.get(server).mergeAccounts = settings.getBoolean(key, false);
@@ -946,8 +949,8 @@ public class GitBlit implements ServletContextListener {
* @return a federation token
*/
public String getFederationToken(FederationToken type) {
- String uuid = settings.getString(Keys.federation.uuid, "");
- return StringUtils.getSHA1(uuid + "-" + type.name());
+ String passphrase = settings.getString(Keys.federation.passphrase, "");
+ return StringUtils.getSHA1(passphrase + "-" + type.name());
}
/**
diff --git a/src/com/gitblit/models/FederationModel.java b/src/com/gitblit/models/FederationModel.java
index 017c2e01..97a93d05 100644
--- a/src/com/gitblit/models/FederationModel.java
+++ b/src/com/gitblit/models/FederationModel.java
@@ -46,6 +46,8 @@ public class FederationModel implements Serializable, Comparable<FederationModel
public String folder;
+ public boolean freeze;
+
public boolean mergeAccounts;
public boolean sendStatus;