aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Azure/Tango.AzureUtils.UI/Views/EnvironmentUpgradeView.xaml
blob: fe00ce9b1b3afdee9a0691c942c9e92d8fc41b77 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
<UserControl x:Class="Tango.AzureUtils.UI.Views.EnvironmentUpgradeView"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             xmlns:vm="clr-namespace:Tango.AzureUtils.UI.ViewModels"
             xmlns:localControls="clr-namespace:Tango.AzureUtils.UI.Controls"
             xmlns:global="clr-namespace:Tango.AzureUtils.UI"
             xmlns:local="clr-namespace:Tango.AzureUtils.UI.Views"
             mc:Ignorable="d" 
             d:DesignHeight="700" 
             d:DesignWidth="1100" 
             d:DataContext="{d:DesignInstance Type=vm:EnvironmentUpgradeViewVM, IsDesignTimeCreatable=False}" 
             DataContext="{x:Static global:ViewModelLocator.EnvironmentUpgradeViewVM}" 
             Background="{StaticResource PrimaryBackgroundBrush}" 
             Foreground="{StaticResource PrimaryForegroundBrush}">
    <Grid Margin="5">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="1*" />
            <ColumnDefinition Width="300" />
            <ColumnDefinition Width="1*" />
        </Grid.ColumnDefinitions>

        <Grid>
            <GroupBox Header="Source App" Padding="10" Margin="10">
                <DockPanel>
                    <ComboBox DockPanel.Dock="Top" ItemsSource="{Binding Apps}" SelectedItem="{Binding SelectedSourceApp}">
                        <ComboBox.ItemTemplate>
                            <DataTemplate>
                                <TextBlock Text="{Binding Converter={StaticResource IWebAppBaseToDisplayNameConverter}}"></TextBlock>
                            </DataTemplate>
                        </ComboBox.ItemTemplate>
                    </ComboBox>

                    <localControls:WebAppPropertiesControl VerticalAlignment="Top" Margin="0 20 0 0" PPCVersionTag="{Binding Config.PPCVersionTag}" EurekaVersionTag="{Binding Config.EurekaVersionTag}" X1VersionTag="{Binding Config.X1VersionTag}" WebApp="{Binding SelectedSourceApp}" />
                </DockPanel>
            </GroupBox>
        </Grid>

        <Grid Grid.Column="1" Margin="20 0">
            <StackPanel>
                <GroupBox Header="Upgrade Configuration" Padding="10" Margin="0 10 0 0">
                    <StackPanel>
                        <CheckBox Click="OnConfigChanged" IsChecked="{Binding Config.SynchronizeDatabaseSchema}" >Upgrade Database Schema</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.SynchronizeDatabaseData}" >Upgrade Database Static Collections</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.CopyMachineStudioStorageBlobs}" >Upgrade Machine Studio Blob Storage</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.UpgradeMachineStudioDatabaseVersion}" >Upgrade Machine Studio Database Version</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.CopyPPCStorageBlobs}" >Upgrade TS-1800 Blob Storage</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.UpgradePPCDatabaseVersion}" >Upgrade TS-1800 Database Version</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.CopyEurekaStorageBlobs}" >Upgrade Twine X4 Blob Storage</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.UpgradeEurekaDatabaseVersion}" >Upgrade Twine X4 Database Version</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.CopyX1StorageBlobs}" >Upgrade Twine X1 Blob Storage</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.UpgradeX1DatabaseVersion}" >Upgrade Twine X1 Database Version</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.CopyFSEStorageBlobs}" >Upgrade FSE Blob Storage</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.UpgradeFSEDatabaseVersion}" >Upgrade FSE Database Version</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.CopyTwineRSMStorageBlobs}" >Upgrade Twine Studio Blob Storage</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.UpgradeTwineRSMDatabaseVersion}" >Upgrade Twine Studio Database Version</CheckBox>
                        <CheckBox Click="OnConfigChanged" Margin="0 5 0 0" IsChecked="{Binding Config.CopyMachineServiceFiles}" >Upgrade Machine Service</CheckBox>

                        <StackPanel Margin="0 5 0 0">
                            <TextBlock FontSize="10">PPC Version Tag</TextBlock>
                            <TextBox x:Name="txtPPCVersionTag" Text="{Binding Config.PPCVersionTag,Mode=TwoWay,Delay=500,UpdateSourceTrigger=PropertyChanged}"></TextBox>
                        </StackPanel>
                        <StackPanel Margin="0 10 0 0">
                            <TextBlock FontSize="10">Twine X4 Version Tag</TextBlock>
                            <TextBox x:Name="txtEurekaVersionTag" Text="{Binding Config.EurekaVersionTag,Mode=TwoWay,Delay=500,UpdateSourceTrigger=PropertyChanged}"></TextBox>
                        </StackPanel>
                        <StackPanel Margin="0 10 0 0">
                            <TextBlock FontSize="10">Twine X1 Version Tag</TextBlock>
                            <TextBox x:Name="txtX1VersionTag" Text="{Binding Config.X1VersionTag,Mode=TwoWay,Delay=500,UpdateSourceTrigger=PropertyChanged}"></TextBox>
                        </StackPanel>
                    </StackPanel>
                </GroupBox>

                <StackPanel Margin="0 20 0 0">
                    <Button Padding="20" Command="{Binding ValidateUpgradeCommand}">Validate</Button>
                    <StackPanel Margin="0 20 0 0" IsEnabled="{Binding CanUpgrade}">
                        <Button Margin="0 10 0 0" Padding="20" Command="{Binding UpgradeEnvironmentCommand}">Upgrade Environment</Button>
                    </StackPanel>
                </StackPanel>
            </StackPanel>
        </Grid>

        <Grid Grid.Column="2">
            <GroupBox Header="Target App" Padding="10" Margin="10">
                <DockPanel>
                    <ComboBox DockPanel.Dock="Top" ItemsSource="{Binding Apps}" SelectedItem="{Binding SelectedTargetApp}">
                        <ComboBox.ItemTemplate>
                            <DataTemplate>
                                <TextBlock Text="{Binding Converter={StaticResource IWebAppBaseToDisplayNameConverter}}"></TextBlock>
                            </DataTemplate>
                        </ComboBox.ItemTemplate>
                    </ComboBox>

                    <localControls:WebAppPropertiesControl VerticalAlignment="Top" Margin="0 20 0 0" PPCVersionTag="{Binding Config.PPCVersionTag}" EurekaVersionTag="{Binding Config.EurekaVersionTag}" X1VersionTag="{Binding Config.X1VersionTag}" WebApp="{Binding SelectedTargetApp}" />
                </DockPanel>
            </GroupBox>
        </Grid>
    </Grid>
</UserControl>