пятница, 20 сентября 2013 г.

TFS 2012: Права доступа уровня проекта

Разрешения уровня проекта применяются к пользователям и группам отдельного проекта. Чтобы настроить эти разрешения, выберите проект в Team Explorer, выберите меню Параметры, а затем выберите Безопасность, либо откройте Team Web Access в режиме администрирования, перейдите к уровню проекта, а затем выберите вкладку Безопасность. Данные разрешения также можно настроить с помощью служебной программы командной строки TFSSecurity.





  • Создать запуск тестов (Create test runs)
  • Пользователи с данным разрешением могут добавлять и удалять результаты тестов, а также добавлять или изменять тестовые запуски для командного проекта.
    TFSSecurity: PUBLISH_TEST_RESULTS
  • Удалить проект (Delete team project)
  • Пользователи с данным разрешением могут удалять проект, для которого у них есть данное разрешение из Team Foundation Server.
    TFSSecurity: DELETE
  • Удалить запуск тестов (Delete test runs)
  • Пользователи, имеющие это разрешение, могут удалять запланированные тесты для данного командного проекта.
    TFSSecurity: DELETE_TEST_RESULTS
  • Редактировать информацию уровня проекта (Edit project-level information)
  • Пользователи с данным разрешением могут изменять разрешения на уровне проекта для пользователей и групп в Team Foundation Server.
    TFSSecurity: GENERIC_WRITE
  • Управление конфигурациями тестов (Manage test configurations)
  • Пользователи, имеющие это разрешение, могут создавать и удалять конфигурации тестов для данного командного проекта.
    TFSSecurity: MANAGE_TEST_CONFIGURATIONS
  • Управление тестовой средой (Manage test environments)
  • Пользователи, имеющие это разрешение, могут создавать и удалять тестовые среды для данного командного проекта.
    TFSSecurity: MANAGE_TEST_ENVIRONMENTS
  • Просмотр информации уровня проекта (View project-level information)
  • Пользователи с данным разрешением могут просматривать участников групп уровня проекта, а также разрешения данных пользователей проекта.
    TFSSecurity: GENERIC_READ
  • Просмотр запусков тестов (View test runs)
  • Обладающие этим разрешением пользователи могут просматривать планы тестирования в этом узле.
    TFSSecurity: VIEW_TEST_RESULTS

вторник, 9 июля 2013 г.

Часто-используемые команды Linux

shutdown -h now - выключить систему
shutdown -r now - перезагрузка

пятница, 7 июня 2013 г.

Проблема с разрастанием кэша на TFS 2012


Иногда случается проблема с тем, что кэш TFS заполняет всё свободное пространство на диске, из-за чего останавливается сервер.

Папка по умолчанию для кэша TFS:
C:\Program Files\Microsoft Team Foundation Server 11.0\Application Tier\Web Services\_tfs_data

Для того, чтобы кэш не разрастался больше указанного размера, необходимо использовать элемент FixedSizeBasedPolicy.

В файл web.config (по умолчанию находится в папке C:\Program Files\Microsoft Team Foundation Server 11.0\Application Tier\Web Services) добавить в раздел <appSettings> текст:
<add key="FixedSizeBasedPolicy" value="500" />
где value - предельный размер кэша в мегабайтах.


После этого сохранить файл web.config и перезагрузить IIS (например, командой iisreset /noforce).

См. ссылку.

пятница, 31 мая 2013 г.

Как добавить PowerShell-модуль ActiveDirectory в Windows 7?

1. Установите Remote Server Administration Tools (RSAT) для Windows 7 (ссылка).
2. Далее, открыть Панель управления > Все элементы панели управления > Программы и компоненты.
Открыть меню справа "Включение и отключение компонентов Windows".
Пройти по дереву Средства удалённого администрирования сервера > Средства администрирования ролей > Средства доменных служб Active Directory и служб облегчённого доступа к каталогам
Включить компонент "Модуль Active Directory для Windows".



3. Всё готово.

Модуль можно запускать через командную строку PowerShell:
>> Import-Module ActiveDirectory

Для проверки корректной работы модуля запустите команду:
>> get-module -ListAvailable


Краткий список решений для частоиспользуемых сценариев работы с модулем ActiveDirectory:
  • Информация о домене:
  • >> Get-ADDomain
  • Информация о контроллере доменов:
  • >> Get-ADDomainController
  • Список администраторов:
  • >> $group = Get-AdGroup Administrators
    >> Get-ADUser -Filter {MemberOf -recursivematch $group.DistinguishedName}
  • Поиск компьютера в домене по вхождению фразы в название компьютера ("pc"):
  • >> Get-ADComputer -LDAPFilter "(name=*pc*)"
  • Более подробная информация о компьютере  чем в предыдущем командлете:
  • >> Get-ADComputer -LDAPFilter "(name=*097*)" -properties *



среда, 29 мая 2013 г.

Установка PowerShell 3.0 ISE на Windows 7

Скачать и установить Windows Management Framework 3.0.
Примечание: если не установлен, потребуется установить .Net Framework версии не ниже 4.0 (ссылка).

После этого в Пуске набрать "powershell" и запустить.

Если при запуске PowerShell-скрипта выдаётся сообщение о невозможности запуска сценария, тогда нужно поменять политику исходя из ваших предпочтений (см. about_Execution_Policies). 

Например:
>> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned

для Windows 10
>> Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser



понедельник, 27 мая 2013 г.

WordPress: Локализация и перевод тем и плагинов

Для перевода английских тем или плагинов я использую плагин "CodeStyling Localization" (ссылка). С помощью него без проблем можно сделать перевод темы или плагина.

См. описание: http://www.code-styling.de/english/development/wordpress-plugin-codestyling-localization-en



четверг, 11 апреля 2013 г.

Мониторинг действий пользователей в TFS

В TFS 2012 появилась функциональность по мониторингу действий пользователей. Чтобы просмотреть эти данные, необходимо открыть Url http://ИмяСервераTFS:8080/tfs/_oi


Мониторинг пользователей

Мониторинг заданий


Раньше для мониторинга пользователей требовалось просматривать таблицу tbl_Command.


среда, 6 марта 2013 г.

Необходимые знания и навыки для сдачи экзамена MS 70-462

Аналогичный предыдущему слайд скиллов для сдачи экзамена 70-462 Administering Microsoft SQL Server 2012 Databases.



Необходимые знания и навыки для сдачи экзамена MS 70-496

Составил и отобразил в наглядной форме все скиллы, необходимые для сдачи экзамена 70-496 Administering Visual Studio Team Foundation Server 2012. Делал для себя, для сдачи экзамена, но возможно кому-то ещё пригодится.




суббота, 26 января 2013 г.

T-SQL Информация о резервных копиях для баз

Информация по резервированию для указанной базы за последние n-дней

-- Имя базы данных
DECLARE @database_name char(100) ='NameDatabase'

-- Сколько дней от текущей даты нужно анализировать
DECLARE @day int = 1

SELECT  
   CONVERT(CHAR(100), SERVERPROPERTY('Servername')) AS Server, 
   msdb.dbo.backupset.database_name as 'Database name',  
   CASE msdb..backupset.type  
       WHEN 'D' THEN 'Database'  
       WHEN 'L' THEN 'Log'  
   END AS backup_type,  
   msdb.dbo.backupset.backup_size,  
   convert(varchar, dateadd(s, datediff (s, msdb.dbo.backupset.backup_start_date, msdb.dbo.backupset.backup_finish_date), convert(datetime2, '0001-01-01')), 108) as backup_duration,  
   msdb.dbo.backupset.backup_start_date AS Start_backup,  
   msdb.dbo.backupset.backup_finish_date AS Finish_backup, 
   msdb.dbo.backupmediafamily.physical_device_name, 
   msdb.dbo.backupmediafamily.logical_device_name,       
   msdb.dbo.backupset.name AS backupset_name, 
   msdb.dbo.backupset.description,
   msdb.dbo.backupset.expiration_date AS Expiration_backup
FROM   msdb.dbo.backupmediafamily  
   INNER JOIN msdb.dbo.backupset ON msdb.dbo.backupmediafamily.media_set_id = msdb.dbo.backupset.media_set_id 
WHERE  (CONVERT(datetime, msdb.dbo.backupset.backup_start_date, 102) >= GETDATE() - @day) and msdb.dbo.backupset.database_name = @database_name
ORDER BY  
   msdb.dbo.backupset.database_name, 
   msdb.dbo.backupset.backup_finish_date desc


Информация о последней сделанной резервной копии для всех баз данных на SQL-сервере



SELECT  
   CONVERT(CHAR(100), SERVERPROPERTY('Servername')) AS Server, 
   msdb.dbo.backupset.database_name,  
   MAX(msdb.dbo.backupset.backup_finish_date) AS last_db_backup_date 
FROM   msdb.dbo.backupmediafamily  
   INNER JOIN msdb.dbo.backupset ON msdb.dbo.backupmediafamily.media_set_id = msdb.dbo.backupset.media_set_id 
 INNER JOIN sys.sysdatabases ON sys.sysdatabases.name = msdb.dbo.backupset.database_name
WHERE  msdb..backupset.type = 'D' 
GROUP BY 
   msdb.dbo.backupset.database_name  
ORDER BY  
   last_db_backup_date 



Список баз данных с количеством часов, которое прошло с последней сделанной резервной копии (базы, которые резервировались за последние 24 часа, в список не попадают)


SELECT 
   CONVERT(CHAR(100), SERVERPROPERTY('Servername')) AS Server, 
   msdb.dbo.backupset.database_name, 
   MAX(msdb.dbo.backupset.backup_finish_date) AS last_db_backup_date, 
   DATEDIFF(hh, MAX(msdb.dbo.backupset.backup_finish_date), GETDATE()) AS [Backup Age (Hours)] 
FROM  master.dbo.sysdatabases AS M LEFT JOIN msdb.dbo.backupset ON M.Name =  msdb.dbo.backupset.database_name
WHERE     msdb.dbo.backupset.type = 'D'  
GROUP BY msdb.dbo.backupset.database_name 
HAVING      (MAX(msdb.dbo.backupset.backup_finish_date) < DATEADD(hh, - 24, GETDATE()))  

UNION  

SELECT      
   CONVERT(CHAR(100), SERVERPROPERTY('Servername')) AS Server,  
   M.NAME AS database_name,  
   NULL AS [Last Data Backup Date],  
   9999 AS [Backup Age (Hours)]  
FROM 
   master.dbo.sysdatabases AS M LEFT JOIN msdb.dbo.backupset 
       ON M.name  = msdb.dbo.backupset.database_name 
WHERE msdb.dbo.backupset.database_name IS NULL AND M.name <> 'tempdb' 
ORDER BY  
   msdb.dbo.backupset.database_name


Источник: http://www.mssqltips.com/sqlservertip/1601/script-to-retrieve-sql-server-database-backup-history-and-no-backups/