Setup Windows & SQL Server Testing Environment
Support for SQL Server on Windows seams broken with UserFrosting 4.2, at least at the testing level.
Current AppVeyor error message :
SQLSTATE[23000]: [Microsoft][ODBC Driver 13 for SQL Server][SQL Server]Cannot insert explicit value for identity column in table 'users' when IDENTITY_INSERT is set to OFF. (SQL: insert into [users] ([user_name], [first_name], [last_name], [email], [locale], [flag_verified], [flag_enabled], [password], [id], [updated_at], [created_at]) values (Cade, Grover, Collin, [email protected], en_US, 1, 1, .h56897nO%QzBfvFgQK.6, 2019-02-01 14:39:50.000, 2019-02-01 14:39:50.000, ?))
https://ci.appveyor.com/project/userfrosting/userfrosting/build/job/7j5xhwb19tthe1w2#L2959
Everything I found so far about this issue and Eloquent is related to the DB Transaction system and Eloquent 5.4 or prior. This leads me to believe this issue might be fixed in newer versions of Laravel/Eloquent.
I won't merge the develop-windows branch just yet, as it contains only the AppVeyor config anyway. This should be monitored and reassessed once #907 is done.
Right now the path issue seen before on Windows should be fixed with UserFrosting/UniformResourceLocator 4.2.2.
Still can't make UserFrosting play nice with AppVeyor so we can run Windows/SQLServer tests. Anyone get any ideas?
Currently AppVeyor support is unreliable and poorly documented. While it's the best bet to get it to work, it requires to install PHP on Windows using Chocolatey which is poorly documented.
GitHub Actions looks promising, as they are fully documented, new and sparkling, but it doesn't support SQL Server yet. PHP support can be enabled using setup-php, but it still doesn't support MySQL and Redis on Windows (throws the Container operations are only supported on Linux runners otherwise).
See :
- AppVeyor Config : #1064
- GitHub Action Branch : #1065
N.B.: While Windows tests was recently added using GitHub Action, it's still run-in only on SQLite. There's no SQL Server testing yet.