aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--build/webpi/install/mssql.sql39
-rw-r--r--build/webpi/install/mysql.sqlbin0 -> 732 bytes
-rw-r--r--build/webpi/manifest.xml13
-rw-r--r--build/webpi/parameters.xml226
4 files changed, 278 insertions, 0 deletions
diff --git a/build/webpi/install/mssql.sql b/build/webpi/install/mssql.sql
new file mode 100644
index 0000000000..390b4ffc02
--- /dev/null
+++ b/build/webpi/install/mssql.sql
@@ -0,0 +1,39 @@
+/**********************************************************************/
+/* Install.SQL */
+/* Creates a login and makes the user a member of db roles */
+/* */
+/**********************************************************************/
+
+-- Declare variables for database name, username and password
+DECLARE @dbName sysname,
+ @dbUser sysname,
+ @dbPwd nvarchar(max);
+
+-- Set variables for database name, username and password
+SET @dbName = 'PlaceHolderForDb';
+SET @dbUser = 'PlaceHolderForUser';
+SET @dbPwd = 'PlaceHolderForPassword';
+
+DECLARE @cmd nvarchar(max)
+
+-- Create login
+IF( SUSER_SID(@dbUser) is null )
+BEGIN
+ print '-- Creating login '
+ SET @cmd = N'CREATE LOGIN ' + quotename(@dbUser) + N' WITH PASSWORD ='''+ replace(@dbPwd, '''', '''''') + N''''
+ EXEC(@cmd)
+END
+
+-- Create database user and map to login
+-- and add user to the datareader, datawriter, ddladmin and securityadmin roles
+--
+SET @cmd = N'USE ' + quotename(@DBName) + N';
+IF( NOT EXISTS (SELECT * FROM sys.database_principals WHERE name = ''' + replace(@dbUser, '''', '''''') + N'''))
+BEGIN
+ print ''-- Creating user'';
+ CREATE USER ' + quotename(@dbUser) + N' FOR LOGIN ' + quotename(@dbUser) + N';
+ print ''-- Adding user'';
+ EXEC sp_addrolemember ''db_owner'', ''' + replace(@dbUser, '''', '''''') + N''';
+END'
+EXEC(@cmd)
+GO
diff --git a/build/webpi/install/mysql.sql b/build/webpi/install/mysql.sql
new file mode 100644
index 0000000000..ca9d1b2f83
--- /dev/null
+++ b/build/webpi/install/mysql.sql
Binary files differ
diff --git a/build/webpi/manifest.xml b/build/webpi/manifest.xml
new file mode 100644
index 0000000000..1ecae7bae6
--- /dev/null
+++ b/build/webpi/manifest.xml
@@ -0,0 +1,13 @@
+<msdeploy.iisapp>
+ <iisapp path="phpBB3" />
+
+ <dbmysql path="install/mysql.sql" commandDelimiter="$$" removeCommandDelimiter="true" />
+
+ <dbfullsql path="install/mssql.sql" />
+
+ <setAcl path="phpBB3/cache" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" />
+ <setAcl path="phpBB3/files" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" />
+ <setAcl path="phpBB3/store" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" />
+ <setAcl path="phpBB3/images/avatars/upload" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" />
+ <setAcl path="phpBB3/config.php" setAclAccess="Modify" setAclUser="anonymousAuthenticationUser" setAclResourceType="File" />
+</msdeploy.iisapp> \ No newline at end of file
diff --git a/build/webpi/parameters.xml b/build/webpi/parameters.xml
new file mode 100644
index 0000000000..03d269f3eb
--- /dev/null
+++ b/build/webpi/parameters.xml
@@ -0,0 +1,226 @@
+<parameters>
+ <parameter
+ name="AppPath"
+ defaultValue="Default Web Site/phpBB3"
+ tags="iisapp">
+
+ <parameterEntry
+ type="ProviderPath"
+ scope="iisapp"
+ match="phpBB3" />
+ </parameter>
+
+ <parameter
+ name="aclCache"
+ description="Sets the ACL on the cache/ folder"
+ defaultValue="{AppPath}/cache"
+ tags="Hidden">
+
+ <parameterEntry
+ type="ProviderPath"
+ scope="setAcl"
+ match="phpBB3/cache" />
+ </parameter>
+
+ <parameter
+ name="aclFiles"
+ description="Sets the ACL on the files/ folder"
+ defaultValue="{AppPath}/files"
+ tags="Hidden">
+
+ <parameterEntry
+ type="ProviderPath"
+ scope="setAcl"
+ match="phpBB3/files" />
+ </parameter>
+
+ <parameter
+ name="aclStore"
+ description="Sets the ACL on the store/ folder"
+ defaultValue="{AppPath}/store"
+ tags="Hidden">
+
+ <parameterEntry
+ type="ProviderPath"
+ scope="setAcl"
+ match="phpBB3/store" />
+ </parameter>
+
+ <parameter
+ name="aclAvatarUpload"
+ description="Sets the ACL on the avatars/upload/ folder"
+ defaultValue="{AppPath}/images/avatars/upload"
+ tags="Hidden">
+
+ <parameterEntry
+ type="ProviderPath"
+ scope="setAcl"
+ match="phpBB3/images/avatars/upload" />
+ </parameter>
+
+ <parameter
+ name="aclConfig"
+ description="Sets the ACL on the config.php file"
+ defaultValue="{AppPath}/config.php"
+ tags="Hidden">
+
+ <parameterEntry
+ type="ProviderPath"
+ scope="setAcl"
+ match="phpBB3/config.php" />
+ </parameter>
+
+ <parameter
+ name="DatabaseServer"
+ description="Enter the database server"
+ defaultValue=".\SQLExpress"
+ tags="SQL, dbServer" >
+ </parameter>
+
+ <parameter
+ name="DatabaseName"
+ description="Database name for your application."
+ defaultValue="phpbb"
+ tags="SQL, dbName">
+
+ <parameterEntry
+ type="TextFile"
+ scope="install/mssql.sql"
+ match="PlaceHolderForDb" />
+ </parameter>
+
+ <parameter
+ name="DatabaseAdministrator"
+ description="Database server administartor username."
+ defaultValue="sa"
+ tags="SQL, DbAdminUsername" >
+ </parameter>
+
+ <parameter
+ name="DatabaseAdministratorPassword"
+ description="Database server administrator password."
+ tags="Password,SQL,DbAdminPassword">
+ </parameter>
+
+ <parameter
+ name="Database Username"
+ description="Username to access your database."
+ defaultValue="phpbb"
+ tags="SQL, DbUsername">
+
+ <parameterEntry
+ type="TextFile"
+ scope="install/mssql.sql"
+ match="PlaceHolderForUser" />
+ </parameter>
+
+ <parameter
+ name="Database Password"
+ description="Password for your phpBB database. (Minimum 4 characters)"
+ tags="New, Password,SQL, DbUserPassword">
+
+ <parameterValidation
+ type = "RegularExpression"
+ validationString = "^.{4,}$" />
+
+ <parameterEntry
+ type="TextFile"
+ scope="install/mssql.sql"
+ match="PlaceHolderForPassword" />
+ </parameter>
+
+ <parameter
+ name="ConnectionString"
+ description="Automatically sets the connection string for the connection request."
+ defaultValue="Server={DatabaseServer};Database={DatabaseName};uid={DatabaseAdministrator};Pwd={DatabaseAdministratorPassword};"
+ tags="Hidden,SQLConnectionString,Validate">
+
+ <parameterEntry
+ type="ProviderPath"
+ scope="dbfullsql"
+ match="install/mssql.sql" />
+ </parameter>
+
+ <parameter
+ name="SQL Database type"
+ description="SQL database type"
+ defaultValue="mssql"
+ tags="SQL,Hidden">
+ </parameter>
+
+ <parameter
+ name="MySQL Database Server"
+ description="Enter the hostname"
+ defaultValue="localhost"
+ tags="MySQL, dbServer">
+
+ <parameterEntry
+ type="TextFile"
+ scope="install/mysql.sql"
+ match="PlaceHolderForServer" />
+ </parameter>
+
+ <parameter
+ name="Application Database Name"
+ description="Database Name for your application."
+ defaultValue="phpbb"
+ tags="MySQL, dbName">
+
+ <parameterEntry
+ type="TextFile"
+ scope="install/mysql.sql"
+ match="PlaceHolderForDb" />
+ </parameter>
+
+ <parameter
+ name="MySQL Database Administrator"
+ description="Database administrator username."
+ defaultValue="root"
+ tags="MySQL, DbAdminUsername" >
+ </parameter>
+
+ <parameter
+ name="MySQL Database Administrator Password"
+ description="Database administrator password."
+ tags="Password,MySQL,DbAdminPassword" >
+ </parameter>
+
+ <parameter
+ name="phpBB Database Username"
+ description="Username to access your phpBB database."
+ defaultValue="phpbb"
+ tags="MySQL, DbUsername">
+
+ <parameterEntry
+ type="TextFile"
+ scope="install/mysql.sql"
+ match="PlaceHolderForUser" />
+ </parameter>
+
+ <parameter
+ name="MySQL Database Password"
+ description="Password for your phpBB database. (Minimum 4 characters)"
+ tags="New, Password,MySQL,DbUserPassword">
+
+ <parameterValidation
+ type = "RegularExpression"
+ validationString = "^.{4,}$" />
+
+ <parameterEntry
+ type="TextFile"
+ scope="install/mysql.sql"
+ match="PlaceHolderForPassword" />
+ </parameter>
+
+ <parameter
+ name="MySQLConnectionString"
+ description="Automatically sets the connection string for the connection request."
+ defaultValue="Server={MySQL Database Server};Database={Application Database Name};uid={MySQL Database Administrator};Pwd={MySQL Database Administrator Password};"
+ tags="Hidden,MySQLConnectionString,Validate">
+
+ <parameterEntry
+ type="ProviderPath"
+ scope="dbmysql"
+ match="install/mysql.sql" />
+ </parameter>
+</parameters> \ No newline at end of file