Skip to content

Commit 6e8ee32

Browse files
Update pipeline yml and cleanup
For not able to find bash error Update delete table statement
1 parent b1748bc commit 6e8ee32

File tree

3 files changed

+63
-119
lines changed

3 files changed

+63
-119
lines changed

.github/workflows/main.yml

Lines changed: 0 additions & 107 deletions
This file was deleted.

azure-pipelines.yml

Lines changed: 54 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,26 @@ trigger:
22
- master
33
- dev
44

5+
variables:
6+
agent.preferPowerShellOnContainers: true
7+
58
jobs:
69
- job: Windows
710
pool:
811
Django-agent-pool
912

1013
strategy:
1114
matrix:
12-
Python 3.7 Windows:
15+
Python 3.7 - Django 3.0:
16+
python.version: '3.7'
17+
tox.env: 'py37-django30'
18+
Python 3.6 - Django 3.0:
19+
python.version: '3.6'
20+
tox.env: 'py36-django30'
21+
Python 3.7 - Django 2.2:
1322
python.version: '3.7'
1423
tox.env: 'py37-django22'
15-
Python 3.6 Windows:
24+
Python 3.6 - Django 2.2:
1625
python.version: '3.6'
1726
tox.env: 'py36-django22'
1827

@@ -28,8 +37,48 @@ jobs:
2837
git clone https://github.com/django/django.git
2938
displayName: Install requirements
3039
31-
- task: Bash@3
40+
- script: tox -e $(tox.env)
41+
displayName: Run tox
42+
43+
- job: Linux
44+
pool:
45+
vmImage: ubuntu-18.04
46+
47+
strategy:
48+
matrix:
49+
Python 3.7 - Django 3.0:
50+
python.version: '3.7'
51+
tox.env: 'py37-django30'
52+
Python 3.6 - Django 3.0:
53+
python.version: '3.6'
54+
tox.env: 'py36-django30'
55+
Python 3.7 - Django 2.2:
56+
python.version: '3.7'
57+
tox.env: 'py37-django22'
58+
Python 3.6 - Django 2.2:
59+
python.version: '3.6'
60+
tox.env: 'py36-django22'
61+
62+
steps:
63+
- task: UsePythonVersion@0
3264
inputs:
33-
targetType: 'inline'
34-
script: tox -e $(tox.env)
65+
versionSpec: "$(python.version)"
66+
displayName: Use Python $(python.version)
67+
68+
- script: |
69+
docker pull mcr.microsoft.com/mssql/server:2017-latest-ubuntu
70+
docker run -e 'ACCEPT_EULA=Y' -e 'SA_PASSWORD=MyPassword42' -p 1433:1433 -d mcr.microsoft.com/mssql/server:2017-latest-ubuntu
71+
curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add -
72+
curl https://packages.microsoft.com/config/ubuntu/18.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
73+
sudo apt-get update
74+
sudo ACCEPT_EULA=Y apt-get install -y msodbcsql17 g++ unixodbc-dev
75+
displayName: Install SQL Server
76+
77+
- script: |
78+
python -m pip install --upgrade pip wheel setuptools
79+
pip install tox
80+
git clone https://github.com/django/django.git
81+
displayName: Install requirements
82+
83+
- script: tox -e $(tox.env)
3584
displayName: Run tox

mssql/schema.py

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -55,18 +55,20 @@ class DatabaseSchemaEditor(BaseDatabaseSchemaEditor):
5555
sql_delete_column = "ALTER TABLE %(table)s DROP COLUMN %(column)s"
5656
sql_delete_index = "DROP INDEX %(name)s ON %(table)s"
5757
sql_delete_table = """
58-
DECLARE @sql_drop_constraint nvarchar(255)
59-
SELECT @sql_drop_constraint = name
60-
FROM sys.foreign_keys
61-
WHERE referenced_object_id = object_id('%(table)s')
62-
IF @sql_drop_constraint IS NOT NULL
58+
DECLARE @sql_froeign_constraint_name nvarchar(128)
59+
DECLARE @sql_drop_constraint nvarchar(300)
60+
WHILE EXISTS(SELECT 1
61+
FROM sys.foreign_keys
62+
WHERE referenced_object_id = object_id('%(table)s'))
6363
BEGIN
64+
SELECT TOP 1 @sql_froeign_constraint_name = name
65+
FROM sys.foreign_keys
66+
WHERE referenced_object_id = object_id('%(table)s')
6467
SELECT
6568
@sql_drop_constraint = 'ALTER TABLE [' + OBJECT_NAME(parent_object_id) + '] ' +
66-
'DROP CONSTRAINT [' + @sql_drop_constraint + '] '
69+
'DROP CONSTRAINT [' + @sql_froeign_constraint_name + '] '
6770
FROM sys.foreign_keys
6871
WHERE referenced_object_id = object_id('%(table)s')
69-
print(@sql_drop_constraint)
7072
exec sp_executesql @sql_drop_constraint
7173
END
7274
DROP TABLE %(table)s

0 commit comments

Comments
 (0)