{"id":14064198,"url":"https://github.com/potatoqualitee/mssqlsuite","last_synced_at":"2025-03-16T18:31:38.881Z","repository":{"id":38287461,"uuid":"384680345","full_name":"potatoqualitee/mssqlsuite","owner":"potatoqualitee","description":"A GitHub Action that automatically install SQL Server suite of tools","archived":false,"fork":false,"pushed_at":"2024-01-16T16:31:39.000Z","size":34,"stargazers_count":39,"open_issues_count":5,"forks_count":14,"subscribers_count":4,"default_branch":"main","last_synced_at":"2024-05-23T00:32:43.090Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/potatoqualitee.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-10T11:20:47.000Z","updated_at":"2024-06-18T19:53:17.954Z","dependencies_parsed_at":"2024-06-18T19:53:14.778Z","dependency_job_id":"9a1b588d-b2d9-4f68-a059-057e340748cc","html_url":"https://github.com/potatoqualitee/mssqlsuite","commit_stats":null,"previous_names":[],"tags_count":9,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/potatoqualitee%2Fmssqlsuite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/potatoqualitee%2Fmssqlsuite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/potatoqualitee%2Fmssqlsuite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/potatoqualitee%2Fmssqlsuite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/potatoqualitee","download_url":"https://codeload.github.com/potatoqualitee/mssqlsuite/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243826788,"owners_count":20354220,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-13T07:03:44.737Z","updated_at":"2025-03-16T18:31:38.850Z","avatar_url":"https://github.com/potatoqualitee.png","language":"PowerShell","funding_links":[],"categories":["PowerShell"],"sub_categories":[],"readme":"# mssqlsuite\nThis GitHub Action automatically installs a SQL Server suite of tools including sqlcmd, bcp, sqlpackage, the sql engine, localdb and more for Windows, macOS and Linux.\n\n## Documentation\n\nJust copy the code below and modify the line **`install: sqlengine, sqlclient, sqlpackage, localdb, fulltext`** with the options you need.\n\n```yaml\n    - name: Install a SQL Server suite of tools\n      uses: potatoqualitee/mssqlsuite@v1.8\n      with:\n        install: sqlengine, sqlclient, sqlpackage, localdb, fulltext\n```\n\n## Usage\n\n### Pre-requisites\n\nCreate a workflow `.yml` file in your repositories `.github/workflows` directory. An [example workflow](#example-workflow) is available below. For more information, reference the GitHub Help Documentation for [Creating a workflow file](https://help.github.com/en/articles/configuring-a-workflow#creating-a-workflow-file).\n\n### Inputs\n\n* `install` - The apps to install. Options include: `sqlengine`, `sqlclient`, `sqlpackage`, `localdb`, and `fulltext`\n* `sa-password` - The sa password for the SQL instance. The default is `dbatools.I0`\n* `collation` - Change the collation associated with the SQL Server instance\n* `version` - The version of SQL Server to install in year format. Options are 2019 and 2022 (defaults to 2022)\n* `show-log` - Show logs, including docker logs, for troubleshooting\n\n### Outputs\n\nNone\n\n### Details\n\n| Application | Keyword | OS | Details | Time |\n| -------------- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------ | ------------- |\n| SQL Engine | sqlengine | Linux | Docker container with SQL Server 2022, accessible at `localhost` | ~30s |\n| SqlLocalDB | localdb | Linux | Not supported | N/A |\n| Client Tools | sqlclient | Linux | Includes sqlcmd, bcp, and odbc drivers | ~15s |\n| sqlpackage | sqlpackage | Linux | Installed from web | ~5s |\n| Full-Text Search | fulltext | Linux | Installed using apt-get | ~45s |\n| SQL Engine | sqlengine | Windows | Full install of SQL Server 2022, accessible at `localhost`. Docker took like 15 minutes. Windows and SQL authentication both supported. | ~3m |\n| SqlLocalDB | localdb | Windows | Accessible at `(localdb)\\MSSQLLocalDB` | ~30s |\n| Client Tools | sqlclient | Windows | Already included in runner, including sqlcmd, bcp, and odbc drivers | N/A |\n| sqlpackage | sqlpackage | Windows | Installed using chocolatey | ~20s |\n| Full-Text Search | fulltext | Windows | Enabled during SQL Engine install | ~1m |\n| SQL Engine | sqlengine | macOS | Docker container with SQL Server 2022 accessible at `localhost`. | ~7m |\n| SqlLocalDB | localdb | macOS | Not supported | N/A |\n| Client Tools | sqlclient | macOS | Includes sqlcmd, bcp, and odbc drivers | ~20s |\n| sqlpackage | sqlpackage | macOS | Installed from web | ~5s |\n| Full-Text Search | fulltext | macOS | Installed using apt-get | ~5m |\n\n### Example workflows\n\nCreate a SQL Server 2022 container and sqlpackage on Linux (the fastest runner, by far)\n\n```yaml\non: [push]\n\njobs:\n  test-everywhere:\n    name: Test Action on all platforms\n    runs-on: ubuntu-latest\n\n    steps:\n      - uses: actions/checkout@v3\n\n      - name: Run the action\n        uses: potatoqualitee/mssqlsuite@v1.8\n        with:\n          install: sqlengine, sqlpackage\n\n      - name: Run sqlclient\n        run: sqlcmd -S localhost -U sa -P dbatools.I0 -d tempdb -Q \"SELECT @@version;\" -C\n```\n\nInstalling everything on all OSes, plus using a different sa password and collation\n\n```yaml\non: [push]\n\njobs:\n  test-everywhere:\n    name: Test Action on all platforms\n    runs-on: ${{ matrix.os }}\n    strategy:\n      fail-fast: false\n      matrix:\n        os: [ubuntu-latest, windows-latest, macOS-latest]\n\n    steps:\n      - uses: actions/checkout@v3\n\n      - name: Run the action\n        uses: potatoqualitee/mssqlsuite@v1.8\n        with:\n          install: sqlengine, sqlclient, sqlpackage, localdb, fulltext\n          version: 2019\n          sa-password: c0MplicatedP@ssword\n          show-log: true\n          collation: Latin1_General_BIN\n\n      - name: Run sqlcmd\n        run: sqlcmd -S localhost -U sa -P c0MplicatedP@ssword -d tempdb -Q \"SELECT @@version;\" -C\n```\n\n## Contributing\nPull requests are welcome!\n\n## TODO\n* MacOS: Migrate docker from qemu to vz to speed up the process.\n* Wait for GitHub Actions to support more stuff to make the install sleeker.\n* Maybe more tools from [here](https://docs.microsoft.com/en-us/sql/tools/sqlpackage/sqlpackage-download?view=sql-server-ver15).\n  * mssql-cli (command-line query tool)\n  * osql\n  * SQLdiag\n  * sqlmaint\n  * sqllogship\n  * tablediff\n\n## License\nThe scripts and documentation in this project are released under the [MIT License](LICENSE)\n\n## Notes\n\nThe `SqlServer` PowerShell module is included on the Windows runner. You can find more information about what's installed on GitHub runners on their [docs page](https://docs.github.com/en/actions/using-github-hosted-runners/about-github-hosted-runners#supported-software).\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpotatoqualitee%2Fmssqlsuite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpotatoqualitee%2Fmssqlsuite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpotatoqualitee%2Fmssqlsuite/lists"}