← All posts tagged code

otakuSiD
code infrastructure cloudformation aws
If you wan to add element in existing list - use nested joins:

ExternalBastionSecurityGroups - List<AWS::EC2::SecurityGroup::Id>
SecurityGroupsList            - List<AWS::EC2::SecurityGroup::Id>
Outputs.BastionSecurityGroup  - AWS::EC2::SecurityGroup::Id

SecurityGroupsList: !Join
  - ','
  - - !GetAtt [ securitygroups, Outputs.BastionSecurityGroup ]
    - !Join [ ',', !Ref ExternalBastionSecurityGroups ]
otakuSiD
code certificates Win
How to filter intalled on the host certificates by FriendlyName

@powershell "Get-ChildItem -Recurse Cert: | where { $_.FriendlyName -eq 'Starfield Class 2 Certification Authority' -or $_.FriendlyName -eq 'Starfield Services Root Certificate Authority - G2' -or $_.FriendlyName -eq 'Amazon Root CA 1'} | Format-Table -AutoSize | Out-String -Width 2000"
otakuSiD
гавно code dev build msbuild
<PropertyGroup>
    <VisualStudioVersion Condition=" '$(VisualStudioVersion)' == '' ">11.0</VisualStudioVersion>
    <CloudExtensionsDir Condition=" '$(CloudExtensionsDir)' == '' ">$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Windows Azure Tools\1.8\</CloudExtensionsDir>
  </PropertyGroup>


Явно указано что бы таргеты искал в папке для MSVS 2012. При сборке из под MSVS - все ок. Как только из NAnt дергаю MSBuild - оно упорно лезет в папку к MSVS 2010, сука.
Ясен пень что для MSVS 2010 нужных таргетов никто не ставил, и все валится с ошибкой:

Azure.ccproj(68,3): error MSB4019: The imported project "C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Windows Azure Tools\1.8\Microsoft.WindowsAzure.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk.

Сталкивался кто с такой херней?
otakuSiD
code dev CI .net azure
Как запилить пакет для деплоя в облако при интеграции. Есть два способа:

1. Натравить утилиту "CSPack" на выхлопы Azure Project:

c:\Program Files\Microsoft SDKs\Windows Azure\.NET SDK\2012-06\bin\cspack.exe c:\src\Eapi.Azure\ServiceDefinition.csdef /role:My.WcfServices;c:\src\My.WcfServices\bin\Release\;My.WcfServices.dll /role:My.AnotherRole;c:\src\My.AnotherRole\bin\Release\;My.AnotherRole.dll /out:c:\MyAzurePackage_build_0.0.0.1.cspkg

2. Билдить Azure Project с нужными параметрами:

msbuild.exe c:\src\MyProject.Azure\MyProject.ccproj /p:Configuration=Release /p:TargetProfile=Cloud /p:PublishDir=c:\Packages\ /target:Publish /verbosity:quiet /maxcpucount:8 /logger:Kobush.Build.Logging.XmlLogger,c:\TOOLS\MSBuild\Kobush.Build.dll;c:\msbuild-report.xml /nodeReuse:true


Второй способ не так гибок но требует меньше ручной настройки, так как Azure Project уже содержит все необходимые данные.


CSPack Command-Line Tool:
http://msdn.microsoft.com/en-us/library/windowsazure/gg432988.aspx

Windows Azure Project:
http://msdn.microsoft.com/en-us/library/windowsazure/ee405487.aspx

Command-Line Build for Windows Azure:
http://msdn.microsoft.com/en-us/library/windowsazure/hh535755.aspx
otakuSiD
code dev .net logging Enterprise_Library
Что-бы вырубить логирование для 'Enterprise Library' логера нужно добавить в конфигурацию специальный фильтр:

<logFilters>
    <add name="LogEnabled Filter"
        type="Microsoft.Practices.EnterpriseLibrary. Logging.Filters.LogEnabledFilter, Microsoft.Practices.EnterpriseLibrary.Logging" enabled="false" />
</logFilters>

http://www.thejoyofcode.com/log_event_to_listener_routing_in_enterprise_library.aspx

"Интуитивно" по самое не балуйся %)
otakuSiD
code dev JS ZeroClipboard ?
Zero Clipboard - скрипт который позволяет копировать текст в буфер обмена использую яваскрипт.

http://code.google.com/p/zeroclipboard/


Скрипт, хорош. Но только до тех пор пока пока не используется на сложных страничках. У нас в проекте есть две textarea, одна из них при загрузке странички скрыта и показывается после нажатия на табку. Над обоими textarea есть кнопочка которая по клику копирует содержимое в буфер обмена.
И все бы хорошо, но в фурифоксе данный скрипт работать отказывается. Копирует только содержимое второй textarea и при загрузке страницы выкидывает такую вот ошибку:

movie.setText is not a function

http://code.google.com/p/zeroclipboard/issues/detail?id=60

Если я правильно понял проблема как то с секьюрити флеша связана.


Что бы все заработало пришлось обойти это через такую вот хитрую жопу:

$('#copy-simple').mouseover(function () {
	var clipSimple = new ZeroClipboard.Client();
	clipSimple.addEventListener('complete', function (client, text) {
		var msg = 'скопировано';
		alert(msg);
	});
	clipSimple.addEventListener('mouseOver', function (client) {
		clipSimple.setText(jQuery.trim(jQuery('#text-simple').text()));
	});
	clipSimple.glue('copy-simple', 'container-simple');
});

#copy-simple - кнопка над одной из textarea.
#text-simple - собсно textarea.

И так же для второй. Может кто сталкивался с этим глюком, есть какое-то более прямое решение данной проблемы?