Como trabalhar com pastas no ambiente de desenvolvimento integrado

O ambiente de desenvolvimento integrado do Looker oferece suporte para pastas nos seus arquivos do projeto. As pastas são mostradas no painel de navegação à esquerda do ambiente de desenvolvimento integrado. Se os desenvolvedores do Looker não organizaram os arquivos do seu projeto em pastas, o projeto terá uma estrutura de arquivos simples, com arquivos listados em ordem alfabética no painel File Browser.

Se você quiser organizar seu projeto em pastas, consulte a seção Como organizar um projeto com pastas do ambiente de desenvolvimento integrado nesta página para ver recomendações.

Veja um exemplo de projeto em que um desenvolvedor adicionou pastas para diferentes tipos de arquivos de projeto, como explores, models e views:

É possível mostrar ou ocultar o navegador de arquivos do ambiente de desenvolvimento integrado usando o atalho de teclado Command-B (Mac) ou Ctrl+B (Windows) ou clicando no ícone do navegador de arquivos:

Clique nos ícones na barra de ferramentas na parte superior do painel File Browser para recolher todas as pastas, realizar edições em massa, pesquisar um arquivo de projeto ou criar new folders e new files:

Cada arquivo ou pasta no painel à esquerda tem um menu que exibe as ações disponíveis para esse item. Para abrir o menu, clique no menu de três pontos à direita do nome do arquivo. Para um item com um nome longo ou que esteja aninhado em várias pastas, acesse o menu rolando no painel esquerdo:

Ao organizar seus arquivos LookML com pastas, você precisa confirmar as alterações e implantá-las na produção antes de outros desenvolvedores do Looker. Elas são como qualquer alteração feita no projeto LookML.

Pasta de projetos importados

Se você importar um projeto, o ambiente de desenvolvimento integrado do Looker criará automaticamente uma pasta imported_projects. Os arquivos de projetos locais e projetos remotos são listados na pasta imported_projects. Clique em um arquivo de projeto importado para ver o conteúdo:

Como eles não podem ser editados, os arquivos de projeto importados não ficam visíveis quando você edita arquivos em massa no ambiente de desenvolvimento integrado.

Como gerenciar arquivos e pastas

Convenções de nomenclatura de arquivos e pastas

Ao criar arquivos e pastas, lembre-se do seguinte:

  • O LookML diferencia maiúsculas de minúsculas. Siga as convenções do projeto ao nomear as pastas. Por exemplo, se a convenção for usar letras minúsculas no projeto, nomeie a pasta como views em vez de Views. Isso faz diferença, principalmente quando você precisa especificar o caminho de um arquivo, como ao incluir arquivos. Geralmente, é recomendado usar letras minúsculas ao nomear objetos e pastas LookML.
  • Os nomes de arquivos não podem incluir espaços nem qualquer um dos caracteres a seguir: / ? * : | " < > %
  • Ao criar arquivos LookML com o ambiente de desenvolvimento integrado do Looker, o Looker adicionará automaticamente a extensão .lkml ao final do nome do arquivo se você não incluí-lo manualmente. Por exemplo, se você inserir flights_data_tests como o nome do arquivo, flights_data_tests.lkml.
  • Para criar um arquivo de exploração, o arquivo precisa ter a extensão .explore.lkml no final do nome do arquivo. Se você está fazendo upload do arquivo, use a extensão .explore.lkml completa. Se você usa o ambiente de desenvolvimento integrado do Looker para criar o arquivo usando a opção Arquivos genéricos LookML, o Looker adicionará .lkml ao final do nome do arquivo se a extensão não estiver presente, mas você ainda precisa adicionar manualmente a parte .explore da extensão ao nome do arquivo. Por exemplo, para criar um arquivo do Explorar chamado flights usando o ambiente de desenvolvimento integrado do Looker, é possível inserir flights.explore ou flights.explore.lkml. O nome do arquivo será flights.explore.lkml.
  • É recomendável usar o ambiente de desenvolvimento integrado do Looker para adicionar arquivos ao seu projeto do LookML. Para isso, crie esses itens no ambiente de desenvolvimento integrado do Looker ou faça o upload deles no ambiente de desenvolvimento integrado do Looker. Em vez disso, se você criar arquivos fora do ambiente de desenvolvimento integrado do Looker e o usar para Extrair (ramificação de produção), use as convenções de nomenclatura corretas e inclua a extensão .lkml no nome do arquivo (ou explore.lkml para arquivos de exploração). Se um nome de arquivo incluir caracteres não compatíveis, o navegador de arquivos do ambiente de desenvolvimento integrado do Looker mostrará o nome em vermelho, e você não poderá ver o conteúdo do arquivo até que renomeie o arquivo com os caracteres suportados. Além disso, o ambiente de desenvolvimento integrado do Looker não exibirá o arquivo, se ele não tiver a extensão .lkml.

Criação de pastas

É possível criar pastas para diferentes tipos de arquivo (como ver arquivos ou modelos de arquivo). Você pode até criar subpastas, o que é muito útil se quiser include um subconjunto das suas visualizações.

Ao criar pastas, lembre-se de que LookML diferencia maiúsculas de minúsculas. Siga as convenções do projeto ao nomear as pastas. Por exemplo, se a convenção for usar letras minúsculas no projeto, nomeie a pasta como views em vez de Views. Isso faz diferença, principalmente quando você precisa especificar o caminho de um arquivo, como ao incluir arquivos. Geralmente, é recomendado usar letras minúsculas ao nomear objetos e pastas LookML. Consulte as convenções de nomenclatura para ver as limitações e diretrizes sobre como nomear arquivos e pastas.

Para criar uma pasta:

  1. Selecione a opção Create Folder no menu apropriado:
    • Para criar uma nova pasta no nível superior da estrutura do diretório, use o menu + na parte superior do painel File Browser.
    • Para criar uma nova subpasta em uma pasta existente, use o menu de três pontos da pasta existente.
  2. Digite um nome para a nova pasta.
  3. Clique em Criar.

A nova pasta é adicionada ao painel de navegação.

Criação de arquivos

Se o administrador do Looker tiver ativado o recurso Geração de LookML aprimorada, o menu + na parte superior do painel Navegador de arquivos mostrará uma opção para Gerar LookML a partir do banco de dados, além das opções listadas aqui.

Para criar um novo arquivo no projeto LookML:

  1. Selecione o menu apropriado:

    • Para criar um novo arquivo no nível superior da estrutura do diretório, use o menu + na parte superior do painel File Browser.
    • Para criar um novo arquivo em uma pasta existente, use o menu de três pontos da pasta existente.
  2. Selecione o tipo de arquivo LookML que você quer criar. É possível criar os seguintes tipos de arquivos:

    * Os arquivos de manifesto do projeto só podem ser criados com o ícone + na parte superior do navegador de arquivos do ambiente de desenvolvimento integrado do Looker e apenas se o projeto ainda não tiver um arquivo de manifesto. Isso ocorre porque um projeto pode ter apenas um arquivo de manifesto e esse arquivo precisa estar localizado no nível raiz da estrutura de diretórios do projeto.
    ** A opção Create Locale Strings File está disponível apenas no ícone + na parte superior do navegador de arquivos do ambiente de desenvolvimento integrado do Looker, mas quando um arquivo de strings de localidade é criado (ou enviado), você pode mover o arquivo para uma pasta.

  3. No pop-up Criar arquivo, digite um nome para o novo arquivo. Consulte as convenções de nomenclatura de arquivos para ver as limitações e as diretrizes para nomear seus arquivos.

  4. Clique em Criar. O novo arquivo será exibido no local em que você o criou. Se necessário, você pode movê-lo para outra pasta.

Depois de criar o arquivo, use o parâmetro include se quiser referenciar elementos do arquivo em outros arquivos LookML do seu projeto. Consulte a página de documentação do parâmetro include para mais informações.

Fazer upload de arquivos

Também é possível fazer o upload de arquivos para seu projeto do computador. Isso é útil se você criou arquivos de dados JSON ou arquivos LookML localmente no seu computador.

Consulte as convenções de nomenclatura para ver as limitações e diretrizes sobre como nomear arquivos.

Para fazer upload de um arquivo para seu projeto, use a função de arrastar e soltar no ambiente de desenvolvimento integrado do Looker:

  1. Navegue até os arquivos do projeto.
  2. Arraste o arquivo do computador para o ambiente de desenvolvimento integrado do Looker. O arquivo será exibido na raiz da sua estrutura de diretórios.
  3. Depois que o arquivo for enviado, mova o item para outra pasta.

Depois de fazer upload do arquivo, use o parâmetro include se quiser fazer referência ao arquivo ou aos elementos do arquivo em outros arquivos LookML do seu projeto. Consulte a página de documentação do parâmetro include para mais informações.

Como excluir arquivos e pastas

Para excluir uma pasta ou um arquivo, selecione Excluir no menu de três pontos do item no painel esquerdo do ambiente de desenvolvimento integrado.

A exclusão de uma pasta também remove o conteúdo dela. Portanto, tenha cuidado ao excluir pastas. Antes de excluir uma pasta, faça o seguinte:
Verifique se você quer excluir os arquivos da pasta ou mova os arquivos para outro local antes de fazer isso.
Verifique se a pasta não contém arquivos mencionados nas instruções include no seu projeto. Consulte a seção Como usar o include com pastas do ambiente de desenvolvimento integrado nesta página para saber mais sobre o uso do include com pastas do ambiente de desenvolvimento integrado.

Quando você exclui uma pasta, o ambiente de desenvolvimento integrado mostra um pop-up de confirmação. O pop-up especifica quantos itens são incluídos na exclusão, o que inclui a pasta e os arquivos dentro dela.

Como mover itens em um projeto em pastas

Você pode arrastar e soltar um único arquivo ou uma pasta inteira com todo o conteúdo dele para novos locais:

Arraste e solte um arquivo ou uma pasta em outra. A pasta de destino não precisa ser expandida para receber outras pastas ou arquivos. Uma pasta se expande automaticamente quando você passa o cursor sobre os itens.

Ao mudar um caminho de arquivo, atualize qualquer instrução include no seu projeto para corresponder ao novo caminho de arquivo. Consulte a seção Como usar include com pastas do ambiente de desenvolvimento integrado nesta página para saber mais sobre como usar o include com pastas do ambiente de desenvolvimento integrado.

Além disso, quando você altera o caminho de um arquivo, o Git exclui o arquivo com eficiência e cria um novo com o novo caminho. Isso significa que o histórico do Git do arquivo estará vazio, porque ele é considerado um novo arquivo. Para ver o histórico do Git do arquivo antes da migração, use a interface do Git para navegar até o arquivo no local original e ver o histórico do Git. A mesma lógica se aplica a um arquivo renomeado, porque o Git exclui o arquivo com eficácia e cria um novo com um nome diferente.

Editar arquivos e pastas em massa

Você também pode selecionar várias pastas e arquivos para mover para novos locais ou excluir.

Mover arquivos e pastas em massa

Para mover pastas e arquivos em massa:

  1. Clique no ícone de edição em massa na parte superior do painel Navegador de arquivos.
  2. Selecione os itens a serem movidos. A quantidade de arquivos selecionados aparece em roxo ao lado do cabeçalho Select Files.
    • Para marcar ou desmarcar arquivos específicos, expanda as pastas e clique na caixa de seleção ao lado dos nomes de arquivos.
    • Para marcar ou desmarcar pastas inteiras e seu conteúdo, clique na caixa de seleção ao lado do nome da pasta.
    • Para selecionar uma seção inteira da lista de diretórios, use Shift + clique. Clique na caixa de seleção do primeiro item do intervalo, mantenha pressionada a tecla Shift e clique no último item da lista. Tanto os itens quanto todos os que estiverem entre eles serão selecionados. Você também pode clicar na tecla Shift de um item para selecioná-lo e tudo que estiver acima dele na lista do diretório.
  3. Clique no ícone de pasta Mover itens em massa para selecionar a opção. O ambiente de desenvolvimento integrado exibirá um menu pop-up de seleção de pasta.
  4. No menu pop-up, escolha uma pasta para os itens selecionados ou clique em Nova pasta para criar uma nova pasta. O nome do projeto exibirá o caminho do arquivo da pasta selecionada na parte superior da próxima página de menu. Para mover itens para o diretório raiz do seu projeto, clique em Move sem selecionar uma pasta.
  5. Confirme o destino selecionado clicando em Mover, crie uma nova pasta dentro da pasta selecionada clicando em Nova pasta ou retorne ao menu de opções da pasta principal clicando no link do nome do projeto no caminho do arquivo.
  6. Clique no X no cabeçalho Selecionar arquivos para sair do modo de edição em massa.

Depois de mudar o caminho de um arquivo, atualize qualquer instrução include no seu projeto para corresponder ao novo caminho de arquivo. Consulte a seção Como usar include com pastas do ambiente de desenvolvimento integrado nesta página para saber mais sobre como usar o include com pastas do ambiente de desenvolvimento integrado.

Além disso, quando você altera o caminho de um arquivo, o Git exclui o arquivo com eficiência e cria um novo com o novo caminho. Isso significa que o histórico do Git do arquivo estará vazio, porque ele é considerado um novo arquivo. Para ver o histórico do Git do arquivo antes da migração, use a interface do Git para navegar até o arquivo no local original e ver o histórico do Git. A mesma lógica se aplica a um arquivo renomeado, porque o Git exclui o arquivo com eficácia e cria um novo com um nome diferente.

Como excluir arquivos e pastas em massa

Para excluir pastas e arquivos em massa:

A exclusão de uma pasta removerá todo o conteúdo dela. Antes de excluir uma pasta, confirme que você quer excluir os arquivos contidos nela. Se você quiser mantê-los, mova os arquivos para outro local antes de excluir a pasta.

  1. Clique no ícone de edição em massa na parte superior do painel Navegador de arquivos.
  2. Selecione os itens a serem excluídos. A quantidade de arquivos selecionados aparece em roxo ao lado do cabeçalho Select Files.
    • Para marcar ou desmarcar arquivos específicos, expanda as pastas e clique na caixa de seleção ao lado dos nomes de arquivos.
    • Para marcar ou desmarcar pastas inteiras e seu conteúdo, clique na caixa de seleção ao lado do nome da pasta.
    • Para selecionar uma seção inteira da lista de diretórios, use Shift + clique. Clique na caixa de seleção do primeiro item do intervalo, mantenha pressionada a tecla Shift e clique no último item da lista. Tanto os itens quanto todos os que estiverem entre eles serão selecionados. Você também pode clicar na tecla Shift de um item para selecioná-lo e tudo que estiver acima dele na lista do diretório.
  3. Clique no ícone da lixeira Excluir itens. O ambiente de desenvolvimento integrado exibirá um menu pop-up com os itens selecionados.
  4. Confirme os itens a serem excluídos clicando em Sim, Excluir ou retorne à seleção de itens clicando em Cancelar.
  5. Clique no X no cabeçalho Selecionar arquivos para sair do modo de edição em massa.

Como usar include com pastas do ambiente de desenvolvimento integrado

Depois de organizar os arquivos do projeto em pastas, você precisa informar o caminho do arquivo ao usar a instrução include.

Ao usar include, lembre-se de que LookML diferencia maiúsculas de minúsculas. Ao especificar um caminho de arquivo, você precisa corresponder ao caso do arquivo e das pastas no caminho. Por exemplo, se o arquivo estiver na pasta Views, ele precisará corresponder a esse uso de letras maiúsculas no parâmetro include. Portanto, você precisa especificar include: "/Views/accidents.view". Geralmente, é uma boa ideia usar letras minúsculas ao nomear objetos e pastas LookML.

É possível usar caminhos absolutos ou relativos na instrução include (consulte a seção Sintaxe do caminho nesta página para ver exemplos) e os caracteres curinga * e ** para incluir vários arquivos de uma só vez. Consulte a seção Exemplos de caracteres curinga nesta página para ver exemplos.

Por exemplo, se você tiver esta estrutura de diretórios no projeto:

As instruções a seguir incluem a visualização products, a visualização order_facts e todas as visualizações no diretório /views/users/:

include: "/views/products.view"
include: "/views/orders/order_facts.view"
include: "/views/users/*.view"

Ao mudar um caminho de arquivo, atualize as instruções include no seu projeto para que correspondam ao novo caminho do arquivo. É possível que você veja avisos de validação do LookML nas suas instruções include antigas se eles não se referirem mais a arquivos ou caminhos de arquivo existentes. Além disso, talvez você veja erros de validação LookML para objetos referenciados que não são mais encontrados porque os caminhos dos arquivos foram alterados.

Dica: ao usar caracteres curinga, é possível verificar quais arquivos estão incluídos passando o cursor sobre o ícone de informação pelo número da linha no arquivo ou clicando na instrução include e procurando na Ajuda rápida:

Dica: copie o caminho de um arquivo selecionando Copiar caminho do arquivo no menu de três pontos do arquivo no ambiente de desenvolvimento integrado do Looker:

Sintaxe de caminho

Veja alguns exemplos de sintaxes que podem ser usadas para incluir arquivos:

Sintaxe Descrição
PATH Caminho relativo a partir do local do arquivo atual.
./PATH Caminho relativo a partir do local do arquivo atual. Este exemplo aponta para o mesmo arquivo do exemplo acima: PATH.
../PATH Caminho relativo a partir do diretório pai do arquivo atual.
/PATH Caminho absoluto a partir da raiz atual do projeto.
//PROJECT_NAME/PATH Caminho absoluto a partir da raiz de um projeto importado chamado PROJECT_NAME.

Exemplos de caracteres curinga

Se você estiver usando refinamentos do LookML, não use caracteres curingas nas suas inclusões. Os refinamentos LookML usam a ordem de inclusão, e o uso de caracteres curinga nas suas inclusões não permite que você controle a ordem em que cada arquivo será incluído. Consulte a página de documentação Refinamentos do LookML para ver mais informações sobre os refinamentos.

Veja alguns exemplos de caracteres curinga. É possível substituir PATH pelas sintaxes do caminho na tabela anterior:

Sintaxe Descrição
PATH/*.view Os caracteres curinga correspondem a arquivos que terminam com .view em PATH.
PATH/*.view.lkml Os caracteres curinga correspondem a arquivos que terminam com .view.lkml em PATH.

Como os arquivos de visualização têm a extensão .view.lkml, este exemplo especifica o mesmo arquivo do exemplo anterior, PATH/*.view. A parte .lkml não é exibida no ambiente de desenvolvimento integrado, nem a parte .lkml necessária para instruções include. No entanto, é possível usar caracteres curinga para aproveitar essa parte comum da extensão do arquivo. Consulte a página de documentação Arquivos de projeto do LookML para ver uma lista de extensões de arquivo do projeto.
PATH/*.lkml Os caracteres curinga correspondem a arquivos que terminam com .lkml em PATH.

Vários tipos de arquivo compartilham .lkml como a parte final da extensão do arquivo, como .view.lkml e .model.lkml. A parte .lkml não é exibida no ambiente de desenvolvimento integrado, nem a parte .lkml necessária para instruções include. No entanto, é possível usar caracteres curinga para aproveitar essa parte comum da extensão do arquivo. Consulte a página de documentação Arquivos de projeto do LookML para ver uma lista de extensões de arquivo do projeto.
PATH/myfile.* Arquivos curinga correspondentes, chamados myfile, com qualquer tipo de extensão em PATH.
PATH/myfile.*.lkml Arquivos curinga correspondentes chamados myfile com qualquer tipo de extensão .lkml em PATH.
PATH/my*file.view Caracteres curinga correspondentes que começam com my e terminam com file.view em PATH.
PATH/my*fi*le.view Caracteres curinga que correspondem a arquivos que começam com my, seguidos por alguns caracteres, depois fi, alguns caracteres extras e terminando com le.view em PATH.
PATH/*/myfile.lkml Caractere curinga de nome de pasta (corresponda apenas a um nível de aninhamento). Corresponde a todos os arquivos myfile.lkml em qualquer diretório filho direto de PATH.
PATH/**/my_file.view A correspondência de caracteres curinga recursiva (corresponde a qualquer quantidade de aninhamento) para todos os arquivos com o nome my_file.view.lkml em PATH e em todos os subdiretórios
PATH/**/*.view Caractere curinga recursivo que corresponde a todos os arquivos que terminam com .view.lkml nos subdiretórios PATH'
PATH/**/my_folder/myfile.view O caractere curinga recursivo corresponde ao subcaminho /my_folder/myfile.view em qualquer profundidade em PATH.

Como usar map_layer com pastas do ambiente de desenvolvimento integrado

Se você tiver pastas do ambiente de desenvolvimento integrado ativadas para seu projeto, precisará usar o caminho do arquivo ao especificar um arquivo de projeto para o map_layer:

map_layer: neighborhoods {
  file: "/maps/my_neighborhoods.json"
}

Como organizar um projeto atual com pastas do ambiente de desenvolvimento integrado

Caso seu projeto já tenha a estrutura de arquivo simples legada, você poderá manter essa estrutura, mas se optar por organizar os arquivos do projeto em pastas, recomendamos que faça as seguintes preparações:

  • Planeje a estrutura de arquivos com antecedência com todos os desenvolvedores.
  • Verifique se todos os desenvolvedores do Looker implantaram todas as atualizações na produção. Se um desenvolvedor tiver mudanças não implantadas, as ramificações refletirão a estrutura de arquivos que existia quando elas foram extraídas da produção. Nesse momento, se o projeto tinha uma estrutura de arquivo simples, a versão do arquivo do desenvolvedor será enviada para produção no local original. Portanto, você terá duas cópias do arquivo. Além disso, se um desenvolvedor tiver implantado alterações não implantadas durante a migração para as pastas, ele terá um conflito de integração ao extrair da produção após a migração.
  • Faça um congelamento de código temporário com todos os seus desenvolvedores até que o projeto seja totalmente migrado para a nova estrutura de diretórios.
  • Atribua um único desenvolvedor para mover os arquivos. O procedimento abaixo pressupõe que um único desenvolvedor está migrando o projeto para as pastas do ambiente de desenvolvimento integrado. Se você precisar que vários desenvolvedores movam arquivos, divida a tarefa entre eles para evitar conflitos de integração. Se houver conflitos de integração, consulte a página de documentação Como usar o controle de versões e a implantação para mais informações sobre como resolvê-los.

Ao mover um arquivo no Git, você exclui de maneira eficaz o arquivo e cria um novo com um novo caminho. Isso significa que o histórico do Git do arquivo estará vazio, porque ele será considerado um novo arquivo. Para ver o histórico do Git do arquivo antes da migração, use a interface do Git para navegar até o arquivo no local original e ver o histórico do Git.

Depois que todos os desenvolvedores enviarem e confirmarem as alterações e pausarem todo o trabalho no projeto, você poderá migrar o projeto para a nova estrutura de diretórios.

Atribua um único desenvolvedor para todas as etapas a seguir:

  1. Verifique se todas as atualizações em todas as ramificações de desenvolvimento foram implantadas na produção. Isso inclui os branches de desenvolvimento do desenvolvedor que executam a migração para as pastas do ambiente de desenvolvimento integrado.
  2. Verifique se todos os outros desenvolvedores pararam de fazer alterações no projeto.
  3. Extrair da produção.
  4. Criar as pastas do projeto.
  5. Mova os arquivos do projeto para as pastas: um arquivo de cada vez ou usando a edição em massa.
  6. Validar o LookML do projeto. Espera-se que você tenha vários erros e avisos do LookML, já que as instruções include e map_layer usam referências a locais de arquivos que provavelmente serão movidos durante este procedimento.
  7. Atualize as instruções include e map_layer no projeto para corresponder ao novo caminho do arquivo. Além disso, talvez você veja erros de validação LookML para objetos referenciados que não são mais encontrados porque os caminhos dos arquivos foram alterados. Consulte as seções Como usar include com pastas do ambiente de desenvolvimento integrado nesta página para saber mais sobre como usar o include com pastas do ambiente de desenvolvimento integrado e a seção Como usar map_layer com pastas do ambiente de desenvolvimento integrado (páginas em inglês) para saber como usar camadas do mapa com pastas do ambiente de desenvolvimento integrado.

    Dica útil: você pode usar caracteres curinga para criar uma correção temporária para avisos e erros de validação do LookML resultantes de instruções include. Usando arquivos de visualização como exemplo, é possível especificar include: "/**/*.view" para incluir todos os arquivos de todas as pastas do projeto. Isso vai evitar problemas de validação do LookML enquanto você continua desenvolvendo. No entanto, essa não é uma solução recomendada a longo prazo, já que incluir mais arquivos do que é necessário pode afetar o desempenho.

  8. Confirme as alterações.

  9. Implantar as atualizações na produção.

  10. Informe aos outros desenvolvedores do Looker que agora é possível extrair as atualizações de produção e retomar o desenvolvimento no projeto.