Skip to content

Conversation

@gossion
Copy link

@gossion gossion commented Feb 28, 2017

No description provided.

@cfdreddbot
Copy link

Hey gossion!

Thanks for submitting this pull request! I'm here to inform the recipients of the pull request that you and the commit authors have already signed the CLA.

@cf-gitbot
Copy link

We have created an issue in Pivotal Tracker to manage this:

https://www.pivotaltracker.com/story/show/140736415

The labels on this github issue will be updated when the story is started.

@gossion
Copy link
Author

gossion commented Feb 28, 2017

(modified from conversation of cloudfoundry/bbs#17)
Hi,

I submit this PR in the purpose of supporting MSSQL (Microsoft / Azure SQL Server) for CF Diego.
Currently mysql and postgres are supported in Diego, in this PR I am trying to make mssql (especial for Azure PAAS - Azure SQL server) as another option for Diego databases.

There are 3 PRs to support this feature:

  1. On bbs: Support Microsoft SQL server on diego bbs bbs#17 - Logic to make mssql available for bbs.
  2. On locket: Support Microsoft SQL server (mssql) locket#2 - The change is mostly for making diego unit test pass, though I don't see how to use locket in a CF deployment.
  3. On diego-bbs: Support Microsoft Azure SQL Database #278 - Change job spec and package to support mssql. (this PR)

Unit test and CF acceptance test were run for these 3 PRs, no issue found. Tests were done against diego v1.7.1 and CF v252

Notes: (If you are okay to do the merge, or if you want to rework these PRs)

  1. PR#1,2 need to be merged before PR#3.

  2. You need to prepare a SQL Server environment to make diego unit test passed when PR#3 is merged. there are two options to prepare the environment:

    A. Test against local SQL server: Setup a SQL server in localhost according to this guide(Guide has also been updated to diego-release/CONTRIBUTING.md). And export a SQL ConnectionString before launching the test, like this:

        export MSSQL_BASE_CONNECTION_STRING="server=localhost;user id=diego;password=Password-123;port=1433"; ./scripts/run-unit-tests     #this connection string should not contain 'database=..' because database will be created automatically when running unit test.
    

    B. Test against an Azure SQL server: You need to create a SQL server on Azure, set the firewall to allow connection from your test IP. And export a SQL ConnectionString before launching the test, like this:

        export MSSQL_BASE_CONNECTION_STRING="server={your_dbserver_name};user id={your_username};password={your_password};port=1433"; ./scripts/run-unit-tests     #this connection string should not contain 'database=..' because database will be created automatically when running unit test.
    
  3. To use on-premise SQL server in CF deployment Diego BBS, you can configure it on properties.diego.bbs.sql on your CF manifest, for example:

    sql:
      ca_cert: null
      db_connection_string: null
      db_driver: mssql
      db_host: {your_dbserver_name}
      db_password: {your_password}
      db_port: 1433
      db_schema: {your_dbname}
      db_username: {your_username}
      max_open_connections: null
      require_ssl: null
    

@emalm
Copy link
Contributor

emalm commented Nov 22, 2017

As per cloudfoundry/bbs#17 (comment), closing as stale.

Best,
Eric, CF Diego PM

@emalm emalm closed this Nov 22, 2017
jvshahid added a commit that referenced this pull request Jun 5, 2018
Submodule src/code.cloudfoundry.org/executor 23ff7f3..08a81a5:
  > use the new gomega Receive matcher to cleanup the tests
Submodule src/github.com/onsi/ginkgo 67b9df7f5..c73579c58:
  > Increase eventually timeout to 30s
  > Clarify asynchronous test behaviour
  > Travis badge should only show master
  > v1.5.0
  > Bring the changelog up to date (#470)
  > Merge pull request #466 from onsi/issue-464
  > Merge pull request #468 from onsi/update-changelog
  > Merge pull request #459 from onsi/unfocus-exclude-vendor
  > Merge pull request #456 from idoru/ignore-suite-with-ignored-go-files
  > Merge pull request #455 from onsi/flaky-measurements
  > Merge pull request #423 from alamages/coverage-tests-fix
  > Add go 1.10 to travis
  > Merge pull request #448 from melnikk/master
  > Merge pull request #451 from onsi/go-1.10-coverage-test
  > Merge pull request #446 from onsi/do-not-create-outputdir
  > Add an extra new line after reporting spec run completion
  > Merge pull request #441 from blgm/releasing
  > Merge pull request #443 from onsi/add-go-1.10
  > Merge pull request #438 from onsi/issue-436
  > Merge pull request #434 from mezis/blur-specify
  > Merge pull request #430 from onsi/issue-426
  > Add tests for When/Specify
  > Update comments and README.md for `When` DSL
  > Merge pull request #386 from akshaymankar/when
  > Merge pull request #383 from eloycoto/master
  > fix the tests on go versions <1.9
  > add a test case for #415
  > Fix Ginkgo stack trace on failure for Specify
  > Merge pull request #409 from lflux/readme-update
  > Merge pull request #400 from alex-slynko/patch-1
  > Merge pull request #403 from alex-slynko/fix_govet
  > Merge pull request #404 from lflux/travis-go-1.9
  > Merge pull request #399 from alex-slynko/fix_imports
  > Merge pull request #401 from alex-slynko/patch-2
  > Merge pull request #398 from martinxsliu/generated-import-ordering
  > Merge pull request #390 from DennisDenuto/master
  > Re-add noisySkippings flag
  > Replace GOPATH in Environment
  > Allow coverage to be displayed for focused specs (#367)
  > ensure customer reporters are run before default reporter
  > Handle -outputdir flag (#364)
  > Handle -coverprofile flag (#355)
  > v1.4.0
  > v1.4.0
  > fix CONTRIBUTING.md
  > Add a CONTRIBUTING.md file
  > add -timeout flag.  fixes #248
  > add 'requireSuite' flag to cause failure if there are test files but no suite (#359)
  > update changelog
  > emit compilation output
  > link to vscode extension
  > add ginkgo watch -watchRegExp fixes #356
  > remove fixCompilationOutput  (fixes #357)
  > Remove mailing list
  > Add Rick and Morty quote to untilItFails messages (#354)
  > Revert "Fix wrong repo URL (#351)" (#352)
  > Fix wrong repo URL (#351)
  > Lack of test suites no longer breaks builds (#347)
  > Update CHANGELOG.md
  > Warn when a suite has test files but no tests to run (#345)
  > fix flaky test by, you know, not relying on obscure go internals
  > update .travis.yml to get latest patch releases
  > fix failing go 1.5 tests
  > ensure tests pass on Go 1.8.1
  > v1.3.1: Actually change the CLI version
  > print location of test suite that failed to report back (#339)
  > v1.3.0
Submodule src/github.com/onsi/gomega 777f4d387..41673fd8f:
  > allow 'Receive' matcher to be used with concrete types (#286)
  > Fix data race in ghttp server (#283)
  > Travis badge should only show master
  > v1.4.0
  > Update the CHANGELOG.md with all changes since last release
  > Improve message from AssignableToTypeOf when expected value is nil (#281)
  > Merge pull request #278 from benmoss/master
  > Merge pull request #273 from vayan/master
  > change Ω to Expect in most places (#268)
  > Merge pull request #272 from trayo/master
  > Merge pull request #271 from onsi/add-go-1.10
  > Merge pull request #270 from Patagonicus/master
  > Remove tests that tried to verify signals as async
  > Merge pull request #262 from onsi/issue-173
  > Merge pull request #259 from onsi/issue-258
  > v1.3.0
  > Add more robust support for XUnit style tests
  > Merge pull request #256 from onsi/allow-multiple-go-routines
  > Merge pull request #253 from challiwill/master
  > Merge pull request #249 from alex-slynko/fix_govet
  > Merge pull request #247 from alex-slynko/fix_imports
  > Merge pull request #243 from williammartin/find-first-mismatch-oob
  > Merge pull request #241 from ivy/fix-typos
  > Merge pull request #218 from alex-slynko/patch-1
  > Merge pull request #239 from williammartin/parallel-testing
  > Merge pull request #235 from onsi/fix-227
  > MatchXML should ignore the order of xml node attributes
  > Merge pull request #233 from kaedys/bugfix/error-matcher-fix
  > Uses equality matcher for matching error strings

Signed-off-by: Sunjay Bhatia <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants