Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

This section describes how to set up the Ed-Fi ODS / API v6.1 in sandbox mode. Before you proceed, make sure you have installed prerequisites listed in Getting Started - Binary Installation.

Table of Contents
maxLevel1
excludeContents

Step 1. Download the Ed-Fi ODS / API Installer Packages

The Ed-Fi ODS / API installation packages can be downloaded from the following links:

The required release packages to install the Ed-Fi ODS / API can be found at the links below. We recommend you stay current with the latest patch update that has been promoted to release.

For each of the downloads, right-click and select "Properties." Update the file extension (from .nupkg to .zip). Remove the version number (optional). Check the box next to Unblock (this will prevent PowerShell from asking for permission to load every module in the installer) and click OK.

Image RemovedImage Added

Info

You may need to configure TLS while running the installation scripts described in steps below.
[Net.ServicePointManager]::SecurityProtocol += [Net.SecurityProtocolType]::Tls12

Step 2. Install the Ed-Fi Databases

Extract the contents of the EdFi.Suite3.RestApi.Databases package. The paths in these instructions assume that the package was extracted to a folder with the name of the package (e.g., C:\temp\EdFi.Suite3.RestApi.Databases).

Edit the configuration.json File

The basic settings for Microsoft SQL Server deployment are provided in configuration.json and the basic settings for PostgreSQL deployment are provided in configuration.postgreSQL.json file. If deploying to PostgreSQL, delete configuration.json file and rename configuration.postgreSQL.json to configuration.json. Update the settings in the file to fit your needs. 

Deck
historyfalse
iddbconfig


Card
labelSQL Server
titleSQL Server


Code Block
 "ConnectionStrings": {
     "EdFi_Ods": "server=(local);trusted_connection=True;database=EdFi_{0};Application Name=EdFi.Ods.WebApi",
     "EdFi_Security": "server=(local);trusted_connection=True;database=EdFi_Security;persist security info=True;Application Name=EdFi.Ods.WebApi",
     "EdFi_Admin": "server=(local);trusted_connection=True;database=EdFi_Admin;Application Name=EdFi.Ods.WebApi",
     "EdFi_Master": "server=(local);trusted_connection=True;database=master;Application Name=EdFi.Ods.WebApi"
  },
  "ApiSettings": {
  "Mode": "Sandbox",
  "Engine": "SQLServer",
   ...
  "MinimalTemplateScript": "TPDMCoreMinimalTemplate",
  "PopulatedTemplateScript": "TPDMCorePopulatedTemplate"
  }



Card
labelPostgreSQL
titlePostgreSQL


Code Block
 "ConnectionStrings": {
     "EdFi_Ods": "host=localhost;port=5432;username=postgres;database=EdFi_{0};Application Name=EdFi.Ods.WebApi",
     "EdFi_Security": "host=localhost;port=5432;username=postgres;database=EdFi_Security;Application Name=EdFi.Ods.WebApi",
     "EdFi_Admin": "host=localhost;port=5432;username=postgres;database=EdFi_Admin;Application Name=EdFi.Ods.WebApi",
     "EdFi_Master": "host=localhost;port=5432;username=postgres;database=postgres;Application Name=EdFi.Ods.WebApi"
  },
  "ApiSettings": {
  "Mode": "Sandbox",
  "Engine": "PostgreSQL",
   ...
  "MinimalTemplateScript": "TPDMCorePostgreSqlMinimalTemplate",
  "PopulatedTemplateScript": "TPDMCorePostgreSqlPopulatedTemplate"
  }



Run Installation Script

After you edit the configuration.json file, open a PowerShell window in Administrator mode and navigate to the EdFi.Suite3.RestApi.Databases package folder.

Run the following PowerShell command to load modules for installation:

Code Block
Import-Module .\Deployment.psm1

Then, execute the following command in PowerShell:

Code Block
Initialize-DeploymentEnvironment

Step 3. Install WebApi

Extract the contents of the EdFi.Suite3.Installer.WebApi package. The paths in these instructions assume that the package was extracted to a folder with the name of the package (e.g., C:\temp\EdFi.Suite3.Installer.WebApi).

Prepare Installation script

Open a PowerShell window in Administrator mode and navigate to the EdFi.Suite3.Installer.WebApi package folder and run the following PowerShell command to load modules for installation:

Code Block
Import-Module .\Install-EdFiOdsWebApi.psm1

The WebApi installer can take a number of parameters to tailor the installation experience (more examples can be found in the Install-EdFiOdsWebApi.psm1 file). At a minimum, database connection information is required.

Copy and modify the following parameter code to fit your connection information:

Deck
historyfalse
idapiInstall


Card
labelSQL Server
titleSQL Server


Code Block
languagepowershell
$parameters = @{
    PackageVersion = "6.12.9723907"
    DbConnectionInfo = @{
       Engine="SqlServer"
       Server="localhost"
       UseIntegratedSecurity=$true
    }
    InstallType = "Sandbox" 
}



Card
labelPostgreSQL
titlePostgreSQL


Code Block
languagepowershell
$parameters = @{
    PackageVersion = "6.12.9723907"
    DbConnectionInfo = @{ 
       Engine="PostgreSQL" 
       Server="localhost" 
       Username="postgres"
    }
    InstallType = "Sandbox"
}



Paste the modified parameter code into your PowerShell window and hit Enter.

Run the Installation Script

Next, run the following command in the PowerShell window:

Code Block
Install-EdFiOdsWebApi @parameters


Step 4. Install Swagger

Extract the contents of the EdFi.Suite3.Installer.SwaggerUI package. The paths in these instructions assume that the package was extracted to a folder with the name of the package (e.g., C:\temp\EdFi.Suite3.Installer.SwaggerUI).

Prepare Installation Script

Open a PowerShell window in Administrator mode and navigate to the EdFi.Suite3.Installer.SwaggerUI folder and run the following PowerShell command to load modules for installation:

Code Block
Import-Module .\Install-EdFiOdsSwaggerUI.psm1

The Swagger UI installer can take a number of parameters to tailor the install experience (more examples can be found in the Install-EdFiOdsSwaggerUI.psm1 file). At a minimum, WebAPI connection information is required.

Copy and modify the following parameter code to add your site name:

Code Block
$parameters = @{
    PackageVersion = "6.12.9723630"
    WebApiVersionUrl = "https://YOUR_SITE_OR_SERVER_NAME_HERE/WebApi"
	PrePopulatedKey = "YOUR_POPULATED_KEY_HERE"
    PrePopulatedSecret = "YOUR_POPULATED_SECRET_HERE"  
}


Info

The PrePopulatedKey and PrePopulatedSecret can be optionally set as parameters to explicitly set the default authorization key and secret used by Swagger to connect to the Populated Sandbox Instance created by the Sandbox Admin App. 

Paste the modified parameter into your PowerShell window and execute the code.

Run the Installation Script

Then, run the following command in the PowerShell window:

Code Block
Install-EdFiOdsSwaggerUI @parameters

Step 5. Install SandboxAdmin (for Sandbox Mode Only)

Extract the contents of the EdFi.Suite3.Installer.SandboxAdmin package. The paths in these instructions assume that the package was extracted to a folder with the name of the package (e.g., C:\temp\EdFi.Suite3.Installer.SandboxAdmin).

Prepare Installation Script

Open a PowerShell window in Administrator mode and navigate to the EdFi.Suite3.Installer.SandboxAdmin folder and run the following PowerShell command to load modules for installation:

Code Block
Import-Module .\Install-EdFiOdsSandboxAdmin.psm1

The SandboxAdmin installer can take a number of parameters to tailor the install experience (more examples can be found in the Install-EdFiOdsSandboxAdmin.psm1 file). At a minimum, OAuthUrl information is required.

Copy and modify the following parameter code to add your site name:


Deck
startHiddenfalse
historyfalse
idsandboxadminInstallParameters


Card
labelSQL Server
titleSQL Server


Code Block
languagepowershell
$parameters = @{
    PackageVersion = "6.12.9723907"
    Settings = @{ OAuthUrl = "https://YOUR_SITE_OR_SERVER_NAME_HERE/WebApi" }	
    PrePopulatedKey = "YOUR_POPULATED_KEY_HERE"
    PrePopulatedSecret = "YOUR_POPULATED_SECRET_HERE" 
}



Card
labelPostgreSQL
titlePostgreSQL


Code Block
languagepowershell
$parameters = @{
    PackageVersion = "6.12.9723907"
    Settings = @{ OAuthUrl = "https://YOUR_SITE_OR_SERVER_NAME_HERE/WebApi" }
    Engine="PostgreSQL"
    PrePopulatedKey = "YOUR_POPULATED_KEY_HERE"
    PrePopulatedSecret = "YOUR_POPULATED_SECRET_HERE" 
}




Info

The PrePopulatedKey and PrePopulatedSecret can be optionally set as parameters to explicitly set the default authorization key and secret used by the Populated Sandbox Instance created by the Sandbox Admin App.  If not present, the key and secret will be set to random strings.


Paste the modified parameter into your PowerShell window and execute the code.

Run the Installation Script

Next, run the following command in the PowerShell window:

Code Block
Install-EdFiOdsSandboxAdmin @parameters

Step 6. Restart your Website

Just a few more tasks to complete your installation: 

  • Open IIS (Press the Windows key Windows logo on your keyboard, type IIS, select Internet Information Services (IIS), and press Enter.
  • Right-click on the server (alternatively, you can right-click the EdFi web site), and select Stop.

  • Right-click the server (or EdFi website) again and select Start.

You are now ready to use the Ed-Fi ODS / API. The following URLs are available:

WebsiteURL
Ed-Fi ODS / APIhttps://YOUR_SERVER_NAME_HERE/WebApi/
Sandbox Administration (Sandbox Mode Only)https://YOUR_SERVER_NAME_HERE/SandboxAdmin
Ed-Fi ODS / API Documentationhttps://YOUR_SERVER_NAME_HERE/SwaggerUI


Include Page
ODSAPIS3V62:_Sidebar - Getting StartedODSAPIS3V62:
_Sidebar - Getting Started